What Kind of Apps Can You Build with Appery.io?

whatkindofapps

One of the most common questions we get asked is “Can I build an app in Appery.io that does [fill in the blank]”. The answer is usually yes. To understand why it is almost always yes, we should look at the core components in the platform.

Appery.io is a cloud-platform that has two core components. They are:

  • Backend Services
  • App Builder


The Backend Services consist of:

  • Database for storing any app data (this database is in the cloud).
  • Push Notifications for sending push messages to the app.
  • Server Code for writing app logic on the server using JavaScript.

Each service listed above has a console where you manage the service during development. For instance, for database, you can create a new database, create, or edit new collections, create or edit new columns in a collection and so on. This all happens during development time or design time.

screen-shot-2015-03-20-at-1-08-22-pm
Because of the nature of Backend Services, when you launch your app, the backend that you created also becomes your runtime. It’s the backend that your app uses when it runs.

The App Builder is where you design, build and develop your app. You use the App Builder during development. The App Builder is an IDE (Integrated Development Environment) in the cloud. It is pretty much like your standard/traditional IDE, but now it’s running in the browser (running in the browser has a number of benefits, but that’s for another post).

screen-shot-2015-03-20-at-1-06-04-pm
What technologies are used to build the app? Today Appery.io App Builder uses the following technologies to build the app:

  • HTML, JavaScript, CSS
  • jQuery Mobile
  • Bootstrap, AngularJS
  • Apache Cordova (PhoneGap)
  • Any custom HTML, JavaScript (or libraries), CSS

As you build the app using the visual editor, that stuff that gets created/generated is just the stuff listed above. The visual tooling makes it faster and easier to build the app – but under the hood you get pretty standard stuff.

Now, you can always write custom JavaScript code if you need to customize a particular feature in your app, or you can add a 3rd party JavaScript library. Or you can use CSS to customize or change the look and feel of a particular component on the page.

What kind of app you build – is entirely up to you and up to you requirements. The App Builder simply makes it easier and faster to build the app. You are really only limited by what the above technologies support, and the browser or WebView (for hybrid).

Appery.io-Platform-Overview (1)

The browser or web view – that’s a key point. That’s where your app runs. It doesn’t run in Appery.io. It runs in the browser when you build HTML5 mobile app, or it runs on the device if it’s a hybrid app (it still inside a special browser called WebView). When it runs in the device as a hybrid app, the app also gets access to native APIs such as the camera via Apache Cordova (PhoneGap).

Can you access the local storage in Appery.io app? Of course you can, but it’s not because you are using Appery.io. You can access the local storage because you are building an HTML/JS app that runs in the browser (or WebView when hybrid) and you have full access to all the browser built-in APIs. Need to access IndexedDB database? You can do it via the JavaScript API that the database provides.

Can Appery.io app connect to a REST API you just found? Yes, it can. In fact, you can connect to any REST API. Appery.io App Builder helps you define and bind/map the service during development. But when your app is running, the app simply makes a standard Ajax request to the REST API.

It’s important to understand that your app runs on a device (not in Appery.io) and talks to some API backend. Be it Appery.io Backend Services, or a 3rd party REST API, or REST API service inside your enterprise.

As you can see, you can build pretty much any app in Appery.io that you can build with HTML/JS/CSS and PhoneGap. Appery.io simply makes it faster and easier to build the app.

I hope this answers the question if you can build an app that does [insert feature here]. The answer is (probably) yes :).