King of App

Interview with Xavier Barata from king of App

In recent years, the demand for mobile applications has grown exponentially and the supply of native developers is not able to cover the demand for apps on the market. Faced with this situation, King Of App, an open source platform that allows you to easily create mobile applications. Xavier Barata, its CEO, tells us what it is, how it came about and what technologies are used in King Of App.

1. What is King of App?

King Of App is the WordPress of Apps, the first Open Source Content Management System that allows people without native mobile programming knowledge to create fully customizable apps. And allows people with web programming knowledge to access the code for the first time and modify whatever they need.

We have created a unique, open source technology that is like a puzzle. It works with a common engine that does not need to be programmed each time and allows 3 types of pieces to be connected:

– Services: Help you manage your app, giving you access to analytics, logging services, push notifications, advertising, etc.

– Templates: Allows you to make changes to the design of your app.

– Modules: Allow you to insert and display any content from any source in your app.

2. How did the idea come about?

All of us partners come from the world of advertising, and we even had our own agencies before. Every time we were asked at the agency for quotes to create an app, they were rejected because they were too expensive.

This is a problem that all our colleagues in the sector have had, today web designers and programmers create more than 50MM websites each year, and app developers only create 500K.

But web designers and programmers cannot develop apps because they do not have enough knowledge and we end up having to look for native developers who are saturated by so much demand, which is why prices continue to rise.

Furthermore, all the studies tell us that the market is going to grow exponentially. This market is moving more than $20B annually in 2015 and all the predictions say that it will grow above $70B in 2017. So we wonder how it will do it if native developers are saturated by so much demand?

Faced with this problem, we looked for a solution in the United States, just as we implemented Joomla and WordPress in 2006, but we didn't find anything similar. So we got to this point and decided to develop it ourselves.

Our technology allows web designers and programmers to create apps with the same knowledge they use to create websites, giving them access to the market and solving this problem, since the average cost per app is 230 euros.

3. Can any user create an app or do they need to have certain knowledge?

Our technology is focused on professionals. It is true that it is not necessary to have programming knowledge to be able to create an app. Our main advantage is that, being Open Source, anyone with knowledge of HTML, CSS or JavaScript can further customize the app. Similarly, if the user is an advanced developer, they can integrate pieces developed with Polymer, React JS, etc.

4. How long can it take to fully create a app?

If you have the content ready, or you import it from a CMS such as WordPress, Joomla, Magento, Shopify, etc., the development process is very fast and in 10 minutes you can have a basic app with push notifications, advertising or analytics up and running and ready to send to the markets.

Although the level of customization that each person wants for their app can make the time to create their app vary, depending on its complexity.

5. What is the fundamental difference between King of App and other app creation platforms?

We are the first Open Source platform, meaning users can access the code to customize what they need, or create custom pieces and assemble them.

Other features linked to Open Source are that creating an app is free and we do not put any type of King of App brand on it, and in our Marketplace you can find a greater variety of templates that you can then customize from the code if you wish, and we are the platform with the most modules on the market.

In the Marketplace, you can also choose from a service provider with just one click, the advertising provider that can generate the most revenue, or from different push notification services, choosing a provider based on functionality or price.

6. Tell us about King of App’s technology stack: programming language, database and integrations with other platforms.

The project is divided into 4 different parts and each of them has a different functionality and therefore a different stack:

The first piece is the builder, which is a user interface that allows you to configure your applications in a simple way. This configuration is saved in JSON format to later create the mobile application. It is coded using AngularJS and SASS for the styles.

The second piece is the visualizer, which is the cornerstone of the project. It generates the different views and behavior of the mobile application from the configuration file. It is created with AngularJS, although it allows the use of modules made with Angular, Polymer or jQuery.

The third is KoApp Components, a series of HTML5 components created with Polymer that allow you to change the aesthetics of applications in real time.

Since our applications do not have a defined backend, we do not need our modules to use a defined infrastructure. However, for our own database we use MongoDB which can be consumed through a Rest API written in NodeJS.

The infrastructure is hosted on Amazon AWS and we use services like S3 for storing files, CloudFront for publishing all public files, SQS for the task system we use for automatic compilation and much more.

7. What was the first version of King of App like?

The first version was a closed system, where the concept of plugins did not exist. This made it excessively rigid and not customizable. It was built with Symfony2 (PHP) and MySQL.

8. What has been the most important technological challenge you have encountered so far?

The project itself has been a great technological challenge, I couldn't choose just one part. I would highlight:

  • Create an asynchronous and reusable module loading system in AngularJS that also allows the use of other frameworks.
  • Have a system of layout elements that behave dynamically.
  • Protect a frontend technology to minimize the chances of bypassing usage licenses.

9. What has been the biggest technological mistake you have made?

This is something you can never be 100% sure of, but I think development could have been made much simpler if we had used Angular2 to create asynchronous module loading.

It is also true that when we started the Angular2 project it was in a very unstable version.

10. What are your next development milestones?

We have just raised 1.5M to expand our team. We are looking for people to reach a team of 25 people. We are opening offices in New York to expand our brand to the American market and grow as an Open Source community.

Share

en_USEnglish