Why I'm Going to Use Aurelia
Aurelia is the new kid on the block with just over a year in the industry. Today, I talk about why I will be using Aurelia on new client-side projects.
If you've been following me for a while, you know that I went to Codemash in 2015 and said I would focus on AngularJs as a way to move forward towards a client-based MVC approach.
With that said, a month after Codemash, I heard about the ruckus about AngularJs 2.0 being backward compatible with version 1.3.
So I decided to "sit on the bench", grab some popcorn, and watch the outcome of what would happen with AngularJs even though I said I would pursue Angular this year. I also didn't have a project that could justify learning a new JS MVC framework.
He was one of the developers who worked on Angular 1.3/2.0 until there was a...umm....disagreement and he left.
Then he decided to create Aurelia. It was created a little over a year ago and while I said I wouldn't adopt "newer" frameworks, this one seemed to have potential.
Angular has been around since 2009 and is really a mature MVC framework for the client-side.
So why would I decide to look at this relatively new framework as opposed to hopping onto the Angular bandwagon?
- I recently saw the blog post called Aurelia Beta Week - Day 1 talking about the release of Aurelia's beta. The video he did with Channel 9 made my jaw drop. I was extremely impressed with how everything fit together with simple "HTML modules" and how Aurelia didn't get in the way of what you wanted to accomplish. It could even do custom data binding with Angular syntax.
- Performance. It seems to really scream on the client.
- It can use TypeScript, but it's not tied to it.
- I've talked to a number of developers about Angular and they've said they love it! Then I ask them about the routing and it's been almost unanimous..."oh, well, yeah, that could be a little better."
- UPDATE: Rob Eisenberg did a comparison against Angular and React. His answers show vision and promise for Aurelia.
- UPDATE: It uses less code than AngularJS.
- UPDATE 2016-09-28: Rob Eisenberg answers your questions on Aurelia.
However, I may have a need to use Aurelia.
One Reason For Me To Use Aurelia
Again, if you've been following me, you know that I tried to make a mobile web application using just web technologies in my ASP.NET MVC: Optimization Series. I didn't think there was a need to learn a client-side framework and challenged myself to make a fast, responsive, strictly web-based application.
Then I went to Codemash 2016 this year and attended a workshop on Building a Hybrid App.
In the workshop, we created a simple calculator on a single HTML page using Apache Cordova. I asked the presenter how you could create a multi-screen hybrid application.
Again, while I don't have a need to create one yet, I may convert my existing Codemash app into a hybrid as a demonstration to my readers (if anyone is interested, post a comment).
One. Last. Push.
The final push for me with Aurelia came when I read a recent blog post titled Aurelia Bug Fixes, More Docs, and New Skeletons!
In this post, they released two new skeleton projects for Visual Studio users.
Both skeletons use ASP.NET MVC with Aurelia, but one uses Aurelia with ES6 and the other one uses Aurelia with TypeScript.
What better time to start looking into Aurelia!
Now that I have a solution, I need a problem! ;-)
Has anyone else used Aurelia yet? Is it good or bad? Post your comments below.