Do We Really Need to Separate the Model from the UI? TLDR: No.
Typically, domain models and UI views are completely separated. A few years ago, we had a good reason to do so because the views were mostly made of imperative code. But now that we have functional UI libraries (e.g., React with hooks), wouldn’t it be possible to gather everything together, and implement the views as methods of the models they represent?