The AppBuilder Story
Part One
The Idea
At AppBuilder we had an idea…or at least an inkling of an idea…could an app be built automatically?
We build apps, a lot of apps, and what we did in the initial stages of building a new app was repetitive. Layout your models, connect your API, create your views for those models — the list goes on.
Surely, this could be automated. I mean, we live in the age of automation. A quick Google gave us the answer, yes, it could be automated. However, not quite in the way we wanted it to be. Our vision was to automatically build Native Apps. Google didn’t seem to be able to tell us how to do that. Well, challenge accepted. We now create Native Android Apps automatically. This is the story of our journey.
The Data is the Key
It was easy enough to layout the challenge to ourselves, to build Native Android Apps, but how would we solve it? We decided to build upon what we knew. Breakdown the problem into small parts and go from there. In their most basic form the majority of Apps, are a view to display a list of information which is usually provided by a JSON API. For example, Twitter is a list of tweets, Facebook is a list of posts, the list goes on, excuse the pun. So we decided to try and parse an API and generate an app from it.
Our First Generated Android App
Fast forward a couple of months and as you would expect from any programmer side project, complications arose. Edge cases crept in fast but in the end we got there. We managed to automatically build a simple newsfeed app from an API.
This is the API that we used and here are some screenshots of the App we managed to create automatically.
[
{
"name":"Top Stories",
"stories": [
{
"author":"Arthur Author",
"date_published":"2017-01-01",
"text":"This is the story",
"title":"Bali volcano: Non-evacuees may be forced to leave area"
}
]
},
{ ... }, { ... }, { ... }
]
The Result
I know it’s not much to look at, but for us it seemed like a big moment and something we could build upon.
Our big win here, is that this app is fully generated. No Android code has been written manually. It’s fully compiled and executed from generated Java, XML generated code. We only fed our AppBuilder with the JSON feed.
What’s Next?
Well, this is just the beginning. If you’re interested in our story we will be posting Part Two soon. Stay tuned by following us on Twitter. Or, if you’re interested in seeing the AppBuilder in action, try out our demo.