Our developer Eugene completely rebuilt the SherpaDesk mobile web app with only one months of coding experience of Angular 2 and Ionic 2.
“We always like to learn something new! We are always looking for the opportunity to learn new technologies as not just a challenge, but to be more productive.”
SherpaDesk is a new startup focused specifically on helping out professional services, especially IT guys. SherpaDesk allows small to medium sized organizations to easily track customer support issues, log billable and non-billable time and monitor project profitability while either at the desk or on their mobile devices. SherpaDesk provides the ease of use and flexibility necessary for organization needing to stay in touch with their customers.
We originally developed the first mobile app using jQuery Mobile. The solution became clunky and slow, essentially making it very difficult to use. Next we thought, let’s try to switch to vanilla JS and Phonegap. This eventually didn’t workout as it became difficult to maintain support across several platforms. We were needing to support iOS, Android and Windows Phone, web app, Chrome extension and even an Apple iWatch.
Having exhausted (and be exhausted) by these methods, Eugene started looking for any SDK, which help him to focus on productivity and functionality of the app, supports the capability of easily supporting multiple platforms and be ready to go right out of the box.
We started explore these options back in December 2015 and at that time Angular2 was just in alpha stage, however looked very promising. Our team is comprised of mostly C# developers, so we liked the idea of its typescript support and component architecture. Still Angular2 was a little too premature solution as there wasn’t really any useful components written yet. To create a fully functional hybrid app, we decided to go with Ionic 2, which is a built on top of Angular 2. This gave us with the best case scenario providing us with a full ecosystem to build exciting hybrid apps.
Ionic 2 offers components and templates just as native developers have access. We used a whole list of Ionic’s 2 functions including side menus, navigation, list views, popups, action sheet, modals, slide box, form inputs, loading, platform, and written some custom components (i.e. select list, tickets list). The complete redesign and refactoring of the app was completed in just two months! Winning!
Results of releasing the new production app have been amazing:
- Loading time improved 1400% (10 sec -> 700 ms)
- Site size decreased 600% (3Mb -> 500 Kb)
- User interaction response speed improved 2000% (2 seconds -> 100ms)
Users love the new design and layout. We have seen engagement with the app significantly increase with each new iteration. We have also seen a lot of lot of discussions asking if there are any apps built on Angular 2 and Ionic 2 SDK capable of production. Our results shows definitively that it is now time to build production apps with Ionic 2.
Recommend Reading: Optimizing Our Mobile Ionic 2 (Angular 2) App for Production (Part 1)
SherpaDesk offers customer support solutions, time tracking and billing for more than 100K users. Our platform is a complex and integrates with multiple plugins to build it.
For example we used the standard ones that most Cordova developers use, such as SafariViewController/InAppBrowser, StatusBar, and Google Analytics, as well as some non-standard ones, such as AppPreferences for keeping LocalStorage persistence.
We use embedded and minified templates to speed up the loading of pages and reducing flicking in the WebView.
We have always been a hybrid app team because we believe in code sharing for our apps and they help us get code out there as soon as possible. We want to use our skill set to develop high-quality apps. Ionic 2 and Cordova help us do that.
“We think that the best thing about developing hybrid apps is the ability to get to market quickly and then iterate quickly.”
SherpaDesk app can be found in the iOS App Store, in the Google Play, Chome Web Store and also on our website.
comments