I’ve been meaning to learn Ember.js to cross-compare it against AngularJS. So I set myself to writing a Heroku application with Ember and Ruby on Rails. From what I heard they’re are supposed to work together magically… I was kind of right, kind of wrong.
*****IMPORTANT*****: You can still view the source code, but this app is now deprecated and no longer works on Heroku. See the MEAN Checklist app for a complete rewrite of this.
- Live checklist app on Heroku: https://ember-checklist.herokuapp.com
- View the Ember source: https://github.com/ashblue/ember-checklist
- View the Rails source: https://github.com/ashblue/rails-checklist
What was painful
Rails required a lot of adjustments to deliver data and Ember.js also requires a chunk re-configuring. There was little out of the box magic between both of them. Authentication with Ember’s simple auth plugin was a mess. Mainly because it, like most Ember related docs, is in a bit of messy transitional state between Ember 1.0 and 2.0. Google search results can be a nightmare since a lot of people are still using and writing material for 1.0.
What I like about Ember.js
The structure of Ember.js over AngularJS is more structured. As it has much better standards and specific ways of doing things. But, if you want to deviate from its standard way of doing things you’ll probably run into an avalanche of issues. Still, this is probably the best MVW / MVC framework for building something with a large team.
The Ember CLI is just as magical as Rails’ equivalent system. It does everything you want and even sets up the beginnings of a nice TDD environment. The CLI is years ahead of the Yeoman AngularJS equivalent.
View the live app
It took me about 2 weeks and 40 hours to get everything fully functional. Source code for the app is available and you can play with it live on heroku at the link below.