We are totally in love with the Ionic Framework. In fact, whenever possible, we go for a hybrid framework over native any day. It allows faster code, less expensive development, and more cross-platform possibilities. We’ve already created dozens of Ionic apps for our clients (and we have much more in the pipeline).
Sometimes, you just have to go native. But, a good developer knows how to choose the right tool. And sometimes native code is expensive and inflexible. We’ve looked at several cross-platform frameworks, but Ionic is our choice when creating business apps.
And Ionic 2 really raised the game. Our clients love it.
Here are some of the main advantages and disadvantages of using the Ionic Framework:
- One of the main advantages so far is that it is cross-platform and lets you write the same app once for multiple platforms.
- You can also use parts of your angular code base to make a desktop version of the app or use almost all of it for a mobile web version.
- It is open source so you don’t need to pay more money for the software you can use it free.
- Good availability of plugins compared to other frameworks out there.
- Good quality, well maintained by the creators and a lot of community are open to help improve the framework.
- If you are hiring someone to build your app you’ll reduce costs.
- Documentation is good.
- You only have to hire 1 developer to minimize cost.
- Cannot support heavily graphical stuff like 3D or video games.
- If there is a native functionality you need to use and no available plugins in Cordova then you need to create it yourself using native code.
- Performance can be a problem for apps with high refresh rates, especially with older versions of Android (Crosswalk may be a solution).
- Support multiple platforms with a single codebase. Meaning, you have some hacks to get it work a bit differently for a single platform.
- You may also have a hard time doing custom transitions or other “weird” things that require a different treatment for each platform or break the wrapping that ionic does to make a web page act like an app.
Our decision tree is . . . if it’s a game, we go Corona SDK. If it’s an app (and if the framerate does not have to be high) . . . we go Ionic.
Learn more about the Ionic Framework here.