Building an application on No Code platform: AppGyver
Tags: android
Published: 2020-10-12 03:41:39

With no-code apps becoming quite popular in the industry, I decided to give them a try. While searching for which no-code platform to use, I came across AppGyver and frankly speaking their Intro video https://www.appgyver.com/ sold me on giving it a try.

Some good use cases for no-code apps may be -
- **Apps for internal teams use** — developing apps for internal teams processes using no-code platforms can be quite useful. When developer resources are low/ company wants to save on developer costs, product managers can easily use no-code apps for creating basic versions of apps
- **Quick mock-ups** — if you want to quickly analyse/ chart out designs for screens, then AppGyver can be a useful platform for that. With common pre-made UI components and easy drag and drop style, creating and designing screens can become quite easy.
- **Try out a business idea** — If you have a business idea and want to quickly verify whether it will work, using a no-code platform can help you build a concrete app and release it to AppStore/PlayStore. You can then validate your business idea and reiterate with changing usage patterns.
- **Production ready apps too** — If you get all the details right.

Being an android developer, I was constantly relating it to building an app natively and these are some of my conclusions at first glance (after working with it for 2 days). By working on it more, I may have a different opinion later.

**Pros**

* Fast UI design and implementation — Loved the pre-made components like spinner, cards, lists and dialogs, if your app needs just basic UI components then this will give you a quick start.
* Easy Data Binding — Dynamic and Static data binding is quite easy here with quick Rest API integration without having to deal with tedious app architectures like MVVM, MVC.
Fast transitions and backgrounds — You don’t need to create xmls for backgrounds and transitions as they are easily configurable from component properties screen.
* Easy event based logic — the graphical display of navigations and logic handling on the Logic canvas make it both easy to use and intuitive.

**Cons**

* Centring on UI components is sometimes frustrating. By default UI components are top left aligned in AppGyver Compose Pro. So centring has to be done manually by calculating screen width and height. This is very easy in Native app development using ConstraintLayouts.
* Changing default navigation is difficult to figure out. By default, navigation on backpress is to the earlier screen on the stack. If you have to customize that, then you will have to use a custom back event giving the number of pages to skip.
* Grid based lists and custom layouts— Displaying grids in list view is slightly complicated as we have to adjust the wrapping, width and height so that components are displayed in a grid. Not as easy as GridLayout. Also creating custom layouts can be somewhat tricky.

All in all, I loved using AppGyver to create a simple app. Are they a competition to native app development? Somewhat. Barring a few hiccups I got while implementing, the app development process was quite smooth. Also the documentation and tutorial videos are self explanatory and provide an easy way out if you are stuck anywhere.
Would I recommend it over Native Android App building? Not for high-scale production apps. You can try it out for internal team use, test it out and then decide whether to build your whole business on it.
It was definitely worth a try and I am excited to try out more complicated apps using AppGyver. Hope this gives you a brief idea about why you might want to consider using no-code platforms.
If you want detailed tutorial and steps, refer https://medium.com/@maithilijoshi94/steps-to-create-an-application-using-no-code-platform-appgyver-and-airtable-1ec9b87e21e7 and let me know about any other platforms you have found interesting. Would love to discuss them too.