Here’s how we developed our Control Panel and its App using a single base code that allowed us to create both our Web application and the App for iOS and Android.
Our goal is to make our customers’ email management easy and powerful. Enable them to do it even when they are not in their office or close to their notebooks is a big step toward this goal.
When designing the 2.0 version of our Panel, we picked the tools we thought allowed us to distribute our product on different channels without having to maintain a different codebase for each platform. We wanted to be able to use the same code we use on the web to ship an experience suited for mobile use on Android and iOS devices.
Web site or SPA (single page application)?
The finale user experience is something closer to a classic desktop or mobile software than a static web site.
This way of serving applications has become extremely popular because it enables everyone who needs to distribute its services to take advantage of the omnipresence of the web as the only platform to target every customer that has access to an Internet connection.
Re-implementing every screen and functionality in different languages is a high-cost operation that often is not sustainable for small teams and without the required knowledge. Using this solution can be a viable and highly valid solution if the nature of the product fits the constraints of this technology.
Responsive is not enough
Keeping a high priority on the mobile experience from day 1 has been crucial to achieving a great result in the user experience on smaller, touch-controlled devices.
Today there is no lack of great tools that help you building “responsive” UIs, but often is not simply a matter of resizing menus, buttons, and other elements but to adapt to a completely different set of patterns (swiping gestures, menu reach-ability).
Modern web technologies have been great. With new features, now widely supported, as CSS grids and Flexbox we have been able to build complex but highly adaptable layouts, re-using most of the components but presented in totally different ways.
Today when you decide to build a mobile App you have a ton of different paths, with the key difference being the position in the spectrum web-native:
- full web and distributed as a Progressive Web App
- a hybrid solution, our choice, closer to the web but with the support of native platform functionalities. The best tools that facilitate the creation of this infrastructure are Cordova and Capacitor.
- the native solution, using Java/Kotlin on Android and Objective-C/Swift on Apple devices.
The hybrid solution is perfect for the kind of product we need to build, and it does not set any constraint, so we are very happy with what the modern HTML5 stack enabled us to achieve.
Download our app Panel by Qboxmail!
Keep a review and let us know what you think about it.