Aurelia is another JavaScript client framework for web, mobile, and desktop that’s more a collection of feature-oriented modules rather than being monolithic. Tying those modules together you can quickly end up with powerful applications with a strong focus on frontend development and with enough flexibility to meet any of your needs and requirements. 

Model–view–viewmodel (MVVM) is a software architectural pattern that facilitates the separation of the development of the graphical user interface (the view) – be it via a markup language or GUI code – from the development of the business logic or back-end logic (the model) so that the view is not dependent on any specific model platform. The viewmodel of MVVM is a value converter, meaning the viewmodel is responsible for exposing (converting) the data objects from the model in such a way that objects are easily managed and presented.