Mantra (Meteor, Angular2, Ngrx, TypeScript, Rxjs, And) born to fuse heterogeneous concepts and frameworks making a new platform with good practices and utils to start a new (or migrate) project with Angular2 and Meteor.
Meteor, quoting their slogan, is the fastest way to build JavaScript apps.
In a world where programming languages, tools and web components inspired on JavaScript are growing meanwhile we read this page, rely on a flexible platform as Meteor can give us the possibility to develop apps in easy way following this evolution.
Looking frameworks for client-side development, I've found more alternatives but I had decided to pay attention on those better compatible with Meteor: Blaze (bundled with Meteor), React and Angular 2.
With my previous working experience with AngularJS, Angular 2 could be obvious.
Anyway, I've put aside my love for Angular's philosophy and I have spent few weeks on compare:
- Compatibility with Meteor without strong dependency (if we want migrate client-side on another place, we need to rewrite it from scratch?)
- Features offer
- MVC pattern coverage
- Third-party libraries compatibility
- Community beside frameworks (in term of issues resolved, release average and so on, you know)
- Documentation
- Roadmap and vision (without consult an astrologist, I promise :P)
Blaze, as we expect, cover 100% the point 1 for compatibility but is 100% dependent on Meteor, so even is valid framework and have amazing features combined into I can't consider it on my client-side app.
Between React (and Redux) and Angular 2 was been heavy decision. Both have nice features and coverage more than 70% of my need. Anyway, in my opinion, if React (and Redux) given a new way to build frontend projects, Angular 2 has learned from its mistakes (like '$scope', nightmare for most developers :P) and reacted taking best of concepts from its "competitor" made a great framework from scratch.
More people also have noticed this, including Meteor's community, and they have started amazing projects likes Angular-Meteor and Ngrx for example.
Thanks of them, today we can build frontend apps more robust, flexible, cross-platform with a powerful architecture.
In this scenario we can ask: Why Mantra?. The answer is: I have no idea :P.
Okay, I'm serious now. All of kinds are fantastic, we can make small or enterprise projects driven by our needs and not only in one-way defined by a specific framework but (there is ever a but, damn) how much cost that revolution?
Any seasoned developer after an initial "wow" start to think at:
- Learning curve
- Knowledge of programming language
- Architecture design
- How to persuade the boss to take him (and teammates) some time to migrate project before new implementations (with yesterday as due date)
- Maintenance
- Testing
- Code styling (okay, that is for nerd)
- Integration
Now if you're not scared of this, we can pass to explain how Mantra can help us to make them less painful.
[TBD]
[TBD]
[TBD]
[TBD]
[TBD]
Mantra is released under MIT License.