In a recent blog post eZ outlined some pain points with the current technology (YUI) used for their SPA administration interface and expressed a desire for alternatives for the next major version.
I would like to make the case for why eZ should consider Ember.js as the JavaScript framework of choice.
The rapid pace of development in the JavaScript world is very exciting and we see new cool technology popup almost every day, but this has a very significant drawback. How do you choose a framework or library to base your product upon that won’t be tossed aside in a few months or a year for something new and shiny?
With a history going back to 2007, an eternity in the JavaScript world, Ember.js has managed to stay relevant and modern by today’s standard, despite its relative old age. Ember.js aims to continually improve and adapt the best ideas while also providing a smooth upgrade path without the throw-everything-away-and-rewrite-everything-from-scratch approach. This, I believe, is the biggest benefit of Ember. Things like a predicable release schedule and LTS releases matter a lot when you’re building big serious applications where you can’t just rewrite things because there’s something newer and cooler out there.
The other benefit of Ember I’d like to highlight is the ember-cli. Ember-cli is what makes working
with Ember fun and productive. It gives you a new project with live reloading, es6
transpiling with babel.js, a build system that concats and minifies, a test
framework and a lot more, all out of the box. If you’ve ever built your own
build system with Gulp or similar tools you’ll no doubt appreciate this.
Ember-cli is also how you extend Ember. Want to use Sass?
ember install ember-cli-sass
and you’re done. IndexedDB support?
ember install ember-indexeddb
. Oauth2?
ember install ember-oauth2
.
In my opinion picking a framework or library is more about the tooling, community, philosophy and process behind it than pure technical features. Features can easily be added and changed, but it’s much harder to build a sustainable community around the project. This is something I think Ember.js has achieved very well.
So go ahead, take it for a spin!
1 2 3 |
npm install -g ember-cli ember new mycoolapp cd mycoolapp && ember serve |