Models and views can be bound to update each other.
54% have it
2. minified file size without dependencies
Smaller file size means faster load times.
3. Supports one-way data binding
Views can be bound to update automatically when an observable object changes.
80% have it
4. Uses a templating engine
Template engines allow for easy and flexible UI building.
67% have it
5. Supports computed properties
Allows the use of functions as properties to compute properties of objects.
34% have it
6. Templates can be pre-compiled on the server
Supports a template engine that can be pre-rendered on the server. This possibly improves page speed, especially on devices with low computing power.
60% have it
7. Extends HTML
Some people see this as an advantage as it eliminates the overhead from another template language.
27% have it
8. Published under MIT License
The MIT License is a very permissive license which allows all uses, including business use, without warranty.
87% have it
Less dependencies means less extra scripts to include, usually resulting in less development overhead and faster load times.
10. number of plugins
Plugins offer an easy way to extend the functionality or integrate with other services. A high number of plugins may indicate an active community of users. Only official plugins are taken into account.
11. Has a stable public API
The major version number is above 0. This means there will be no compatibility breaking API changes introduced by the development team.
54% have it
12. Has an official, up-to-date entry in the npm package manager
The node package manager can also be used for managing front end scripts.
47% have it
13. Works well with more than just one template engine
Other frameworks might be locked with a template engine you don’t like and there is nothing you can do about it.
40% have it
14. Uses observables for data binding
Models are observed for changes. This is a well known pattern. Can be more performant than dirty-checking in some cases.