Svelte is the new kid on the block that constantly gains in popularity among web developers. It’s described as a radical new approach for building user interfaces. Compared to Vue or React, which both rely heavily on the browser to do their work, Svelte uses a compile step during build time, allowing for better performance.
Svelte aims to deliver an outstanding developer experience by reducing the need for writing extensive boilerplate code.
- Outstanding performance
- Small bundles
- Built-in style encapsulation
- Declarative transitions
- No virtual DOM
- Less boilerplate code needed
- Truly reactive
It comes with a great CLI tool for fast rebuilds, autoreload, and a test runner. Ember also has a great router that has been the inspiration for other routers, like React Router. The framework is very performant due to its fast rendering technologies.
Ember addons give you plenty of plugins to enhance your applications. Ember Concurrency, for example, can be used for efficient state management. Ember Simple Auth is an addon supporting all kinds of authentication, and Ember CLI Deploy keeps your deploy logic maintainable and reusable.
- Build pipeline out of the box
- Best-in-class routing
- Extensive data layer
- Fully-featured testing capabilities
- Six-week release cycle
Preact is, as the name already suggests, quite similar to React, but the library is much smaller, only 3Kb. Yet it has the same modern API as React. It provides the thinnest possible virtual DOM abstraction, stable platform features, real event handlers, and can directly be used in the browser without transpilation.
It’s also one of the fastest client-side frameworks available, lightweight and highly performant.
- ES6 classes, hooks, and functional components
- JSX, VDOM, DevTools, SSR
- Ready for server-side rendering
- Modern browser support (IE11+)
At only 6Kb, this library is pretty small. It comes with fewer API methods than the bigger frameworks — which means there’s less to learn to be productive.
- Performant and predictable
- Close to standards
- Enjoyable syntax
- Small learning curve
- Tiny size
- Powerful, modular ecosystem
Aurelia has great documentation and tutorials to help getting started. It comes with a powerful, reactive binding engine, a templating engine, routing capabilities, plugins, support for server-side rendering, and more.
- Easy to learn
- High performance
- Reactive binding
- Simple testing
- Extensive ecosystem
- Unmatched extensibility
- Routing, composition, and progressive enhancement
It’s used by companies like Nike and Vimeo and supports things like JSX, ES6+, animation, testing, and more.
It has good documentation to get started — with many codependencies and examples to try things out. However, I find it to be slightly behind the other mentioned libraries in terms of docs.
- Very performant
- Supports virtual DOM
- Lifecycle methods
I hope you understand there’s more out there than Angular, Vue and React. Some use cases require different approaches and frameworks. It highly depends on the situation and project.
In the end, you won’t make a mistake by going with one of the big three frameworks. Angular is a valid choice for large enterprise applications and is often paired with Java for full-stack development. React and Vue are also good choices. My advice: Don’t be a fanboy/fangirl/fanperson. Try to choose a framework that fits your situation and the project you want to work on. Be open-minded!