Best No-Code App Builders (Part 1)

I tried to create a mobile app using different no-code app builders. Here’s what I’ve learned.

Serhii Pospielov
The Startup
35 min readJan 19, 2022

--

Photo by Markus Winkler on Unsplash

There are tons of no-code and low-code mobile app builder platforms, and every year even more appear. Most current comparison articles do not dive into specifics and only have information that you could find on each company’s landing page. Slogans aren’t particularly useful when you’re trying to make a purchasing decision, so it’s often important to have a more in-depth analysis. The same functionality can be implemented differently, and the learning curve can be different across no-code platforms. These articles also often ignore mobile back end integration, which is an important part of applications, since they need a database to store data and run logic like password recovery. It’s essential for any product to have integrations and for any review to have information about them.

In this article, I’ll review the best no-code mobile app builders from a developer’s point of view. I’ll show you screenshots of the app builders themselves, not just their landing pages, so you can see which approach is actually right for you. I’ll review internal services and, in cases in which they aren’t available, show integration options.

To better understand each feature and its importance, I’ll take IMDB’s clone application as an example. Why did I choose this app specifically? Basically, it has everything the usual application has: a page with a list of items (movies) that can be filtered, an item details page (movie details, trailers, posters), user-created content (ratings and reviews), notifications (about movie releases and other news and events), authorization and profile editing, and integrations with third-party services. That sounds like a lot of complexity, so can it all be implemented using low- or no-code app builders? This is particularly concerning because some no-code app builders are designed for specific situations (eCommerce or inventory management), so even with customization, I may not be able to build something like the IMDB app unless they have a specific template for it. But using a more general no-code development platform or almost any low-code platform, I should be able to create at least a simple version of the IMDB app. Don’t forget that IMDB is not just a mobile application; there is a complex back end behind it. Some cool IMDB functionality like recommendations can be implemented with no-code AI platforms, but I won’t cover that in this article. We will still look at back ends more precisely, as we are going to go beyond storing data to sending pushing notifications and using schedulers.

I won’t develop the whole application, as it would take too much time to review so many mobile app development tools. Instead, I’ll go through the most interesting pieces to demonstrate what’s possible.

The legal side of developing such an application is not covered in this article. Posters and movie screenshots are often under copyright, so I don’t make any suggestions of how to ensure you doing this yourself could be legal. In my examples, I took all the data from OMDb API, which is licensed under CC BY-NC 4.0, so it can only be used for non-commercial purposes.

No-Code vs. Low Code App Builders

Before we start, let’s discuss the difference between no-code and low-code mobile app builders.

  1. No-code platforms let you build your own app without any coding or programming skills. This is huge since anyone can create their own applications! The learning curve may differ, but in most platforms “hello world” applications can be created in hours. Of course, there is a downside to this, because there is only limited flexibility to these platforms. If you have a big new idea, you’ll probably only be able to implement part of it. Usually only simple applications can be created with no-code app builders.
  2. Low-code platforms are also primarily for simple mobile applications, but they have the capacity for more complexity. The downside here is that there’s a steep learning curve for non-programmers. Still, as the name suggests, you don’t need to have expert programming skills. In most cases, you can start without writing code at all, and then, if you need, you can just reuse examples from the community or StackOverflow. If you need even more, then probably, a simple programming course will cover all the basics you need.

Which one is best for building mobile applications and what should you choose? Some people say that it’s better to prototype on no-code mobile app builders and then create final applications on low-code builders. But then you need to master and pay for two platforms. Other people say that it simply depends on the complexity of your application, and for simple ones you can just use no code. This is likely true, but it’s hard to say exactly what the threshold for complexity is, and requirements will obviously differ from project to project. I would argue that it doesn’t matter too much. Often no-code app development platforms allow creators to write pseudocode, and low-code platforms let you create applications without writing code.

Since I don’t see the difference as particularly significant, and to simplify both of our lives, I’ll be referring to “no-code platforms” throughout this article, but you can read this whole article as applicable to both no- and low-code options (although in some cases I’ll refer to no-code specifically when the difference needs to be emphasized).

Back End

As I mentioned before, mobile back end is a crucial part of almost all applications. The role of the back end includes:

  1. Storing data — in our case, we need to store movie information, reviews, ratings, user profile information, and more.
  2. Sending push notifications — for us, this might include featured trailers, news, and even reminders when a movie user likes comes to theaters.
  3. Authorization — our application will work without it, but there won’t be ratings and review functionality.
  4. Custom automation — we want to send push notifications about movie releases at the release date.

A full explanation of mobile back end would be its own article, but it’s important to remember that integration with external mobile back ends is often harder than integration with internal back ends. This means that as a rule, it’s a huge plus if a platform has its own back end.

There are no huge requirements for the back end for my application. I will need just three tables: movies, users, and reviews. But as I am creating a serious IMDB competitor, I’ll need to store lots of records.

I will try to make everything using the back ends of reviewed no-code development platforms or find integrations that cover each functionality.

Pricing

This is the tricky part for lots of no-code mobile app builder users. Basically, when you have millions of dollars to spend, you’ll probably want to hire a team of conventional mobile app developers.

No-code platforms are more cost-effective, but you need to think carefully about your total spending. As with developing any software, your spending will be split into development and production costs, and the production stage is much longer than development stage:

No code project lifecycle

It’s great if the platform has a free plan for the development stage, but you should keep in mind that you’ll likely have to buy a subscription to publish an application, at which point you probably won’t be able to cancel because the application will stop working. As the development stage is typically much shorter than the production stage, you need to be careful when you choose your platform. Look at total costs, including but not limited to production.

Typical payments for no-code app builders

You should also remember the cost of back end services. Back end services include storing data in the database and running business logic on the back end, like sending push notifications and automation. You almost always start paying for them when you first release your application. This is why these costs often come as a surprise. These costs also grow the more users and data you have. Finally, as I already mentioned, if the platform has its own back end services, it’s almost often more cost effective than integrating with third-party services.

Typical payments for no-code back end

Development Stages

Each product goes through several stages of development. It is important to start small and get feedback from users before going further. Sometimes you need to define the minimum scope to show it to investors. Let’s go over the expected development stages for this project. Then as I review each no-code platform, I’ll explain whether each stage would be possible on that platform (with coding, without coding, or not at all).

  1. The minimum viable product (MVP) will have a design of the application, a list of movies, their descriptions, and trailers, as well as movie filters and search. I expect that every platform will be able to make this type of application with full functionality without coding. The advantage of developing such a minimally functional application is that we can almost immediately publish it to the market and get the first batch of reviews. We also need to set up the process of adding new movies, and it’s a good idea to start doing this from the beginning.
  2. The first release version will have authorization, reviews and user ratings, and push notifications. Some of those features I expect to be a challenge for no-code editors, but if they support it, it will be easy to implement.

We’ll only talk about the MVP in this article, just to keep things relatively simple, but I’m planning on publishing another post with more detailed information about further development.

List of the Best No-Code Mobile App Builders

I tried 13 different no-code development platforms and managed to create an MVP version on just five:

  1. Appery.io
  2. AppGyver
  3. Thunkable
  4. Adalo
  5. Microsoft PowerApps

Appery.io

Appery.io is a low-code app builder with a variety of back end services. It has lots of useful project templates, plug-ins, and examples. The learning curve may be steep, but because you can add any code you want, the capabilities are huge. Nevertheless, I will try to create a totally no-code application with it. Let’s see how I do.

As of this article’s writing, Appery.io had three fully functioning editors each based on a different technology: JQM, Ionic 4, and Ionic 5. When you make your own app, you should probably choose the one you’re the most familiar with. I chose Ionic 5 because it’s the most recent addition, and all the new tutorials that the platform creators have come out with are based on it.

First impressions and prototype design

Appery.io app builder

My first impression is that there are so many elements on the screen that you can get lost. But when you get used to it, you understand that it’s quite handy to have everything on one screen so you don’t need to open and close stuff every time you need it.

The Appery.io editor is quite standard for no-code mobile app builders; to design your prototype, all you need is to drag and drop elements from the “Core Components” palette.

After you drop a predefined component like “Card,” you can easily extend it with other components like “Image” and “Icon.”

You also have the option to add custom components. In my case, there was no default YouTube component, so I just found it in one of the plug-ins. After the plug-in import, a new YouTube page was created with an example of using this custom component, and the custom component itself appeared in the “Custom Components” palette, so I was able to add it to any screen.

Preview and export

This is probably the second most important thing in no-code mobile app builders. You need to quickly see the result in a browser so you don’t need to have your phone to check it, and you need to be able to export your result application to Android and iOS, so you can publish it to the market.

The first preview in Appery.io works quite long like 30 seconds, but then after each change, it updates the preview very quickly, so you don’t need to wait. For my example, the preview worked perfectly; it looked exactly like it would on a phone, and all the functionality worked as it should.

Appery.io no-code platform doesn’t advertise this functionality, but I saw it on one of their tutorials, and it’s pretty handy. You can click “Remove frame” and use the Google Chrome developer functionality to see how your app will look on different devices, with a rotated screen, if only the 3G network is available, etc. While this is Google Chrome’s functionality, the other platforms don’t give you the option to tap into it.

The export options on Appery.io are very rich; you can export not only to Android and iOS binaries but also export code that can be used for further development, which could be handy if you decide that low code is not enough for you anymore.

One of the coolest things to me is that you can export to Android without any setup process, so you don’t need to generate any certificates. Unfortunately, this doesn’t apply to iOS, but this is because you have to generate your certificate in your Apple development account.

There is an auto-update feature that allows you to use your phone to update content on your application, so your users can see your changes immediately, without an app update.

Database back end

Appery.io database

As was mentioned before, Appery.io no-code app builder has its own back ends, so I created a database with movies on the platform. All operations were done on UI, so this is a totally no-code database. It has cool features like the ability to export and import from both CSV and JSON formats, which could be useful if you have a list of movies in one of those formats, so you won’t need to fill the database by hand. In my case, I just prefilled the database with four examples.

The Appery.io database supports query search, which I will use to filter movies by name, year, and genre.

Integration with database

Appery.io database integration

To integrate with this database, you will need to import the database service, which was quite easy. All I needed to do was to choose the database, collection, and method (query) from the list.

To actually invoke this service and get the movies list, I needed to add a “Datasource” on the page in the “Data” tab and the action on the screen creation event that invokes this data source.

Unlike the design prototype, this process is not very clear initially, so it’s better to find a text or video tutorial to get to know the process. After the first tutorial, I was easily able to create the query service.

Custom logic

Managing custom logic

It’s possible to add logic using the no-code approach. Basically, there are two concepts — events and actions. On each event, you can assign one or several actions and change the order of their invocation. So in my case, I need to invoke a query service on the page load or set the variable and navigate to another page on click.

To store the movie data and the filters, I created variables in “Model and storage.” They will be used in mappings that I’ll describe in a moment.

Of course, the full capabilities of the no-code platform will unfold if you use custom code here, but in my case, I intentionally chose to only use no code until it’s impossible to create critical functionality without it. So far I’ve been doing fine.

Data mapping

Appery.io data mapping feature

Data mapping is what actually fills your application, and Appery.io’s method is pretty cool. They use visual mapping, so not only is it a no-code approach, it’s also quick and easy. The only difficulty was understanding iteration through elements — in my case I needed to iterate through the list of movies and map name, year, genre to each movie card on the screen. Some no-code platforms provide special list components, but in Appery.io you can iterate whatever you want. Again it’s not clear from the start, but with visual mapping, it’s quite easy to understand how it works. I chose my card component with other elements in it and just mapped the movie details.

MVP on Appery.io summary

Appery.io is not the simplest no-code app development platform, but their tutorials make it easier to create the app you want without limitations. It is one of two platforms that allowed me to create the exact application I imagined before I started writing this article. Watching the tutorials is definitely necessary the first few times you use it, though. I’m sure that if you worked with their platform for a few months it would get easier and quicker.

The biggest advantages of Appery.io no-code platform are integrated back ends, preview and export capabilities, and easy-to-use data mapping.

The biggest disadvantage is that integration and custom logic are not very clear.

AppGyver

AppGyver is a no-code platform without back ends. The biggest advantage of this platform is that it’s totally free. Of course, you still need to pay for a third-party back end in almost all applications, but the editor itself is quite powerful and easy to use, so it may be a good choice especially if you have a tight budget and very simple application.

Even though it’s a no-code platform, it still allows some custom code, even though it’s not as powerful as conventional low-code platforms.

First impressions

AppGyver app builder

My first impression is that this editor is quite simple. Of course, the downside is that the editor is only the first part of developing the application, and you will have to find other functionality by clicking through to other screens. The good thing is that there is an integrated video tutorial video that shows all the main functionality, so you don’t need to look for them on YouTube. By watching their tutorials for about an hour, you can create a simple application on your own.

The editor is very similar to the Appery.io editor in that you drag and drop components and set them up on the panel. There are two ways to combine components: using layout and editing existing components.

If the functionality you need isn’t included in a default component, you can find more in their extensive components marketplace. If you can’t find the right component there, you’re in trouble. There wasn’t a YouTube component for me to use, but I managed to implement it via the “WebView” component. It was good that I found a workaround, although I can’t customize this component like I would have been able to if were one from the marketplace.

Preview and export

AppGyver preview

AppGyver no-code platform has two options to see your preview: in browser and in their mobile application.

In the browser, it looks a little bit different from how it will on a phone (e.g. there is no back button, and there is a tabs button on the left). Also, my custom YouTube component didn’t work at all. The preview updates quickly on both the browser and the mobile application.

AppGyver allows you to export projects to Android, iOS binaries, and web applications. You can’t download the code to change it or build it manually, and you need to handle all certificates and set up by yourself, so even the first build for Android was quite a time-consuming task for me.

Database back end

As I mentioned, AppGyver does not provide its own back end, so I chose Xano for storing my data. Xano is an easy-to-use no-code back end. I will use it for each mobile app builder without a back end, so there is no sense to describe its functionality, since it doesn’t affect the review. I just wanted to remind you here that you will have to pay for it and take this cost into account.

Integration with database

AppGyver REST API configuration

AppGyver doesn’t have native integration with Xano back end, but there is a good video tutorial that explains how to do it.

To integrate with Xano, you need to create a new REST API called “Data resource” and set it up manually. Then you need to add a new “Data variable” associated with this resource with the type “Collection of data records.” The service will be invoked automatically during page load. The problem here is that by default it also invokes this service once every couple of seconds. This means automatic page updates, which sound great, but since you pay per request or have a request limit, this is a serious expense. I recommend disabling automatic updating, which you can learn how to do in one of their tutorials.

Custom logic

Managing custom logic

AppGyver no-code development platform has a visual editor for no-code custom logic. All you need to do is drag and drop actions, set up them, and then link them between each other. I manually invoked the back end service and set the response as a variable. It was pretty cool that this was so easy to do, but if I had a more complex application, there’s no telling how much more complicated and time-consuming this would be.

The number of default actions is quite limited, but there is a marketplace of actions and the ability to write a custom JS code (so it’s not a pure no-code platform after all). In the MVP stage, I did everything without writing code or adding any actions from the marketplace.

Data mapping

AppGyver data mapping

In AppGyver, you choose the component and then bind each property with the value you want using the properties panel. It can be static text, variables, calculated formula (Google Calc style code), component properties, or an iterator.

To iterate through the list, you need to add one of the predefined list components. If you don’t like their design, you will have to change it in the components editor, but this is a limitation since you can iterate only through the list component. However, after you choose a variable to iterate through, the mapping becomes quite straightforward.

MVP on AppGyver summary

Creating the MVP with AppGyver was quite an easy task. I never really got stuck, and the video tutorials were handy. There were only two disappointing things: the lack of a YouTube component (and that I didn’t manage to make a custom one) and difficulties with exporting Android and iOS binaries. The biggest advantage of this no-code platform is its easy custom logic editor and mapping, and the biggest disadvantages are their preview and export limitations and lack of back end.

Thunkable

Thunkable calls itself a no-code platform, although I would call it a low-code platform with a basic back end. If you learned coding through Scratch as a kid, then it will be easier to use the Thunkable custom logic editor. Still, I would say this is “visual coding,” not “no code,” since you use essentially the same coding structures as “if… else…”

There’s a free plan on Thunkable, but your applications will be available for the public to copy, rebrand, or sell as well. This is great for practice and helping the programming community, but I don’t recommend staying on this plan if you want to push your application through to production. You should at least upgrade to the cheapest plan with a private app, which costs $15 a month.

Thunkable has two editors — “new” and “old.” As of the writing of this article, the “new” editor had less functionality and almost all tutorials were for the “old” editor. This is why I chose the “old” one for the review.

First impressions

Thunkable app builder

In Thunkable, everything is on one screen, which is handy; you just need some time to get used to it. The editor is very similar to the previous products. It’s a bit tricky to align elements on the screen; first, you need to use row and column components to make everything look good, and then you need to set up their size properly. For some reason, the default values almost never matched what I wanted, so there was lots of repetitive work. But in the end, you can do any appearance you want.

There are lots of default components. The problem is there are no plug-ins or marketplace with additional components. This means if you don’t find the component you need, you probably won’t be able to make what you want. I ran into three problems:

  1. The “List viewer” component supports only one text, which means I wasn’t able to make the UI I wanted with a poster and year in the list of movies. Instead, I had to view only the movie names. I believe this is a critical problem for the attractiveness of my application.
  2. There are no “radio button,” “check box,” or “select box” components, which is why I wasn’t able to make the UI I wanted and had to implement it through different screens and the “List viewer” components.
  3. The “Video” component doesn’t support YouTube. The good news here is that (like I did with AppGyver) I managed to implement it with the “Web Viewer” component.

Preview and export

Thunkable preview

Thunkable no-code app development platform has three options to see a preview: two in the browser and one in their mobile application. It wasn’t clear what the difference was between the two browser-based previews. For the most part, the preview worked fine and the content was accurate, except for some rare glitches. Also, there is no “save” button in Thunkable, because it saves automatically. This is fine, but keep in mind that if you make a change and immediately click preview, it may not have your most recent updates.

Thunkable will let you export to Android and iOS binaries and even publish to the App and Play stores (with their Pro plan). In the free version, you can export just twice a month, so if you export both versions, you’ll be at your limit. But the great news is that you don’t need to set up anything for either Android or iOS.

Database back end

Thunkable no-code platform supports a basic database back end. You can easily import the data from Airtable or Google Sheets. When I first saw this feature, I was relieved that I wouldn’t need to integrate with third-party services. Even better, the “Data viewer” component supports a layout with an image and subtitle. The reason I call this “basic” is that it doesn’t support any filtering. This is a topic of frequent discussion in the Thunkable community. The only solution is to download all the data to your phone and filter it locally, which would work fine with the four movies in my prototype. If I wanted to continue to a full product, I would need thousands of movies, though, and filtering locally would be awfully slow. To get around this, I reused the Xano back end I created for AppGyver.

Integration with database

Thunkable REST API configuration

There is no native integration with Xano in Thunkable, but it wasn’t a big problem for me to repeat what I had done with AppGyver in Thunkable. Thunkable has a “Web API” component which you need to initialize with a URL and Query Parameters for future mapping for filtering.

Then you invoke this component on the “Blocks” editor, which will be described in “Custom logic”

Custom logic

Thunkable custom logic

As I mentioned before, I would describe Thunkable custom logic as “Visual code,” not “No code”. You have blocks like “Initialize … variable … with value,” “when … do …,” and “if … then … else ….”. And you need to build with them your custom logic. As I am familiar with writing code, it was quite easy, except that if there are any issues, there is no easy way to debug the problem.

If you don’t know how to code, it’ll be easier to find tutorials from Scratch, because they’re easier to use than Thunkable’s.

Since there is a low-code option, Thunkable will let you create pretty complex applications. But there is also a problem; as this is not an actual code, not everything can be implemented easily. Just look at the block I created to invoke database service and map the data (see the purple block on the screenshot). First of all, it took a ton of time, and second, I made a mistake and there was no easy way to find where. Data mapping should be easier on a no-code platform.

Data mapping

Thunkable data mapping

As you may be noticed in the custom logic section, you need to implement data mapping in the “Blocks” custom logic. As shown in the last screenshot, it can be pretty simple. Other times, though, it can be incredibly difficult (like I described in the custom logic section). The main idea is that you have variables and UI components. Each UI component has a “Set …’s … to” block that allows you to map any variable or variable field to UI components property.

MVP on Thunkable summary

Thunkable no-code app builder has powerful custom logic, although it’s complex and not as powerful as a UI editor. The lack of UI features led to me not being able to implement MVP in the way I wanted. Also, I don’t think that it’s fair to say that I finished the MVP of the mobile application without code, because I did have to write some; I just did it with visual components. The upside is that It was very easy to export my first Android and iOS binaries to test my application and publish it.

The biggest advantage of Thunkable is powerful custom logic abilities(almost low code) and the ability to easily export to Android and iOS without any setup.

The biggest disadvantages are the limited number of components, overly simple back end, unnecessarily complex custom logic, and lack of debugging process.

Adalo

Adalo is a no-code app builder with a basic back end. Like Appery.io, it has lots of useful project templates and examples and a marketplace with components. It is totally no code.

My experience with Adalo was a little bit different from other mobile no-code platforms, so it took some time to get used to it. Overall, though, it’s pretty simple.

It has a free plan, which will allow you to learn the product and probably do a simple prototype. The back end for the free plan is very limited (50 rows of data per app), and there are no third-party integrations available unless you have a paid plan. You also won’t be able to export your binary or publish your app unless you have a paid plan. Expect to pay at least $50 per month to have a production-ready application.

First impressions and prototype design

Adalo app builder

As I mentioned, my first impression was that this no-code mobile app builder looks very different from the other ones. The overview of the screens, plus the fact that you don’t need to move between them, is very convenient. You can also move elements between screens, which is nice.

Another interesting difference is that even in a blank application, Adalo creates working sign up and login screens. We will return to authorization in the second part of the article.

The big difference with the other no-code platforms on this list is that there is no aligning of components. So you can’t say that this button should take up 20% of the screen and this input is 80%. You also can’t set the paddings or margins (e.g. you can’t say that you want 10 pixels between components). It makes it easier and quicker to develop, but you can’t always know how it will look on different devices. On my device, it looked exactly as I expected, but when I ran the preview on tablet mode, I wasn’t totally satisfied with the look, and couldn’t figure out how to change it. Basically, there is a trade-off between quick development and the final result.

Another difference with other no-code platforms is that it relies more on ready-to-use components. This means that you can rapidly create a list of elements with a great design, although there can be issues if you don’t like the default component. There are “Simple” components you can combine to make anything you want, but it will be a challenge to make it look cohesive. In my case, you can see that the list of movies looks different than the movie details screen.

There is a marketplace with more components. There was no default YouTube component, but I easily installed it from the marketplace and quickly set it up.

Preview and export

Adalo preview

There are some pluses and minuses to previewing and exporting on Adalo. On the one hand, the preview allows you to see how it will look on different devices with different resolutions. On the other hand, my movies screen looked different on the editor and on the preview. The first input (“search movie”) was shifted almost 50 pixels up!

Adalo no-code platform also provides a link to see the preview on a device, but if you want to export it to install as an app and see the real application, you will have to buy a paid subscription. From what I read in the documentation, there is no one-click export like in Appery.io or Thunkable. You will need to set up lots of stuff before the first export.

Database back end

Adalo database

Adalo no-code app builder has a basic database back end. You can export and import the data from a csv file. Basically, the work with the database was easy and simple. I implemented almost everything I needed, and only ran into a problem with filtering. I implemented name filtering through a “Contains” operation that worked perfectly. But then I failed to make year and genre filters. If the user chose a year, everything worked fine, but if they didn’t choose a year, it showed nothing at all.

Because of this problem, I had to use the Xano back end again. The integration itself was great (read about it in the next section) but there was still the fact that I would have to pay for a third-party integration, which is only an option for the paid version of Adalo, so that’s two additional expenses.

Integration with database

Adalo REST API configuration

Integration with Xano was very similar to other services. I had to fill the URL, then it made a test request and parsed the result, and I could map the fields to components. The only difference is that it looks like you don’t need to define the dynamic parameters at this stage; all the parameters you fill here will be static. On the other hand, it doesn’t allow you to manually set up any response schema, which can be a problem.

Custom logic

Adalo actions

Adalo no-code app builder did a great job of reducing the amount of custom logic. It can be added as action to events on certain components. Not every component has actions; for example, you can’t add any logic on the “on change” input component. Still, everything that is mapped to this input updates automatically after you type in the input text. This is another trade-off; it’s fast to implement, as you don’t need to implement lots of custom logic, but you can’t do anything if it works in an unexpected way.

I think I may have also found a bug here. There is manual data, which I think should be similar to variables in other platforms. The thing is, when you add the manual data, it just disappears a few moments later. After a quick search, I found a topic on the Adalo forum where another user complained about it, and Adalo staff just answered that you need to avoid using this functionality. Why did I mention all of this? Basically, I wanted to use a new screen with a list of years and genres as on other platforms, but the default functionality didn’t allow me to send the year or genre value back on the movies list. The only workaround that I see is using manual data, which apparently doesn’t work. So I had to implement filter as select boxes. Here is the result of the trade-off I mentioned before. I don’t want to make you think that Adalo custom logic is awful (it’s really easy compared to other platforms); it just sometimes doesn’t give you what you want.

Data mapping

Adalo data mapping

To get back to the positives, Adalo no-code app builder provides a very easy way of mapping. Since it knows about all the components and available data on the screen, when it’s time to map it to the label, you just choose what you want.

Iteration through the list is also simple and very similar to AppGyver; you choose the variable you want to iterate and then the fields for each component. Unlike AppGyver, you can make a list and iterate through any component, even iterate buttons.

MVP on Adalo summary

It took some time to get used to this no-code app development platform, especially as there is no quick video tutorial tour. This isn’t as bad as it could be because this editor is very simple. I didn’t manage to make the app with the user experience I wanted, but the MVP app is totally functional.

The biggest advantage of Adalo is the very easy simple editor and mapping.

The biggest disadvantages are preview, export and minimal opportunities for custom logic.

Microsoft Power Apps

Microsoft Power Apps is a low-code platform with all the back end power of Microsoft Azure. One of the biggest advantages is that it can rapidly generate a mobile application for inventory management. This feature is very similar to other systems like Appsheet or Glide, but unlike them, you can drastically modify your app. The big downside here is that you will have to use a lot of code (it’s pseudocode like in Microsoft Excel.).

Microsoft Power Apps also differs from other no-code platforms in the fact that it is targeted at enterprises (it was actually quite hard for me to sign up as an individual). Because of this, you can’t publish your app to the App or the Play Store. They expect that you will use the app within your company and that every employee will have a PowerApps application on a mobile device to run your application through. This is a huge problem for lots of startups, although it’s very convenient for enterprises, because employees will need to install only one application and then the security team assigns what application they can use.

The pricing of $5 per app is very attractive, but it doesn’t include the back end, so you still need to pay for Microsoft or third-party back ends.

As with Appery.io, I’ll try to make an MVP of my mobile application without code and switch to coding only if required.

First impressions and prototype design

Microsoft Power Apps app builder

As with lots of Microsoft applications, you can expect a very familiar UI. In addition to looking like a Microsoft app, it also looks like most other no-code platforms, so it’s pretty easy to get the hang of. But the positioning elements are like in Adalo no-code platform, so you can’t set absolute coordinates and size and can’t say that I want this image to be 20% of the screen regardless of size. It’s faster to develop this way, but it’s harder to guarantee the exact look on different devices. By default, they prevent apps from rotating to horizontal mode; I had to enable that myself, and it still didn’t look exactly how I wanted horizontally. However, unlike Adalo, you can control how it calculates the exact placement or size using code (for example, it calculates the X coordinates of my arrow component with “Parent.TemplateWidth — Self.Width — 5”.). Of course, it’s hard to call this approach no code.

Moving between screens is hidden in “tree view” which can be inconvenient if you have lots of screens. But Power Apps provides a very cool (and as far as I can tell, unique) feature: if you press the “alt” button and click on the button on the screen that leads to another screen, you will move to this screen automatically. So basically they have an almost real preview in the editor. Unfortunately, this feature didn’t work on Linux, so I was stuck with moving between screens in the “tree view” panel.

Finally, Microsoft Power Apps had all the components I needed to create an MVP.

Preview and export

Microsoft Power Apps preview

In Microsoft Power Apps low-code platform , you can see the preview in the browser and publish it to the PowerApps application on a device. For my MVP, the preview worked perfectly. One interesting thing: the editor basically shows you what the preview showed you last time. So if you filtered movies, you will only see the movies you saw in the preview. Unfortunately, sometimes this means that you will have to run a preview before you will be able to see everything in the editor. It’s confusing at first, but when you get used to it, it’s pretty helpful.

Still, as I described in the overview of Microsoft Power Apps, it’s missing one big thing: you can’t export your application to publish it to the Google Play market or Apple App Store.

Database back end

Microsoft has a variety of back end services, including ones where you can store data. Power Apps app builder has lots of connectors to these services and other third-party back ends. Most of the tutorials show how to connect to Google Sheets and, as with Thunkable, it looked ideal for me, because then I wouldn’t need to pay for it. This connector does have a limit of 500 rows, which is too low if I want to make a real competitor to IMDB. I didn’t want to use an enterprise-level database like Microsoft MSSQL because it requires additional knowledge, and I wouldn’t expect a lot of no-code developers to choose it. So I just decided to use Xano here as well, just to make a fair comparison with other platforms.

Integration with database

Microsoft Power Apps REST API configuration

Third-party integration using REST API was the first serious challenge I faced with Microsoft Power Apps. It is not as clear and easy as other platforms, but you can find lots of video tutorials that have step-by-step explanations. Still, there are a few more steps to integrate with the database than on any other platform.

First, you need to exit your app builder and create a Custom Connector, define all REST settings, and save it. Then you will need to create a code that invokes it in the editor. You will also need to add this type of code to the “OnVisible” event of the page for it to invoke the service on the page load:

UpdateContext({movies: Xano.GET({Name: NameFilter.Text, Year: If(year = “All”, “”, year), Genre: If(genre = “All”, “”, genre)})})

I promised that I would try to make a no-code version of the application, but on this step, I failed, because this no-code platform just doesn’t have this kind of capability.

I also ran into some issues with saving this Custom Connector. Sometimes it didn’t save my changes and just reset old values; others it updated only part of my new values.

Custom logic

Microsoft Power Apps custom logic

As I mentioned, I failed to make the application using the no-code approach.

Most Microsoft Power Apps tutorials start with a simple template that shows a list of items and then allows you to show their details and edit them. If the functionalities shown in these tutorials fit your needs, you will probably be able to make a mobile application without code. However, even though the application I just described is very similar to what I’m creating, I had to change almost everything in this template and write lots of code. The only custom logic Power Apps allows you to change from UI is to navigate to another page. All other logic you need to create yourself. Of course, all the code is just predefined functions, which are very similar to Microsoft Excel functions, so it is still easier than creating an application from scratch, but the learning curve may be quite steep.

Data mapping

Microsoft Power Apps data mapping

Data mapping is also not very straightforward. For example, to send the movie details screen so you can actually display it, you will need to set a variable while you’re changing the screen. This may sound very similar to the other editors, but unlike them, you will need to create a code for it yourself, so you will need to add JSON as a third parameter in the “Navigate” action. Then, on the movie details screen, you will have to put the corresponding value into each visual component without any autocomplete, so this low-code app builder won’t remind you of the name of this variable.

You can iterate through the list of values using a special Gallery component. In each Gallery item, you can put any simple component and then map the value to it. As expected, setting the items list and mapping to components is only possible by manually setting the appropriate field in the right panel.

MVP on Power Apps summary

Microsoft Power Apps has a familiar design and very easy to add components. But even in this simple mobile application, I had to use their predefined functions to write a custom logic, so Power Apps definitely can’t be called a no-code mobile app builder. Still, I created the MVP quite quickly, and I didn’t have to learn any specifics of writing code for mobile applications. Power Apps is also one of the two mobile app builder platforms on which I managed to create the exact application I imagined before I started this article.

The biggest advantage of Microsoft Power Apps is the simple and powerful editor.

The biggest disadvantages are that you can’t export the app to the Apple App Store or Google Play Market and that there isn’t a no-code approach for custom logic and data mapping.

Mobile App Makers That Didn’t Work for Me

I initially tried 13 different no-code mobile app builders, but I only succeeded with five of them. This doesn’t mean that they’re unusable, just that in most cases, these platforms target very limited business cases. They’re great at what they do; it’s just that they only support a certain number of business cases. For example:

  1. Appsheet is a great no-code app development platform if you want to make a simple application for viewing and editing items from your Google Sheet (it also supports other connectors). The problem is you don’t have much freedom with customizing the logic. This is very similar to the default template of Microsoft Power Apps, but you can’t change the template.
  2. Glide — is very similar to Appsheet, in that you can create a mobile app from Google Sheet (or their own database). I was actually amazed that I almost created an application very similar to my MVP in 10 minutes. Of course, the filter didn’t work as I wanted, and the details page looked very different, but I got the list of movies, the movie details page, and the YouTube videos and descriptions. This is an awesome no-code platform for quick prototypes with even less functionality than an MVP.
  3. Appy Pie allows you to create applications using their screen templates. If you’re lucky, you will quickly get the application you want. In my case, they didn’t have screen templates for my application, so I didn’t manage to create even an MVP. It is also the only no-code platform that made me connect my PayPal to them for a trial period before I even created my first app. Their trial period is very short (seven days).
  4. BuildFire is similar to the Appy Pie product. I didn’t find suitable screen templates, and I also didn’t find how to connect my data to the application.
  5. Bubble is a very popular no-code development tool, but there is no native support for building mobile apps. Someone suggested exporting the app as HTML and building a mobile application manually, but this is not what I expect from a no-code mobile app development platform. This is why I didn’t add it to the extended review, as I was totally focused on mobile app builders.
  6. Apphive is a new no-code platform. It looks good, but the documentation and videos are in Spanish, so not the most useful for me. The interface is quite different from other solutions, so I didn’t manage to do even a simple prototype. We’ll have to wait a bit longer until they translate the documentation and tutorials.
  7. Biznessapps is similar to Appy Pie and BuildFire, but here you have application templates, not screen templates. If they fit your goals, creating an app is very simple. If not, there is no way to make your own app. In my case, there was no such template.
  8. AppsGeyser is another template-based no-code mobile app builder. The most similar template to my MVP is the Media Player template, which lets you create a three-page application with three static YouTube videos. Of course, this is not what I wanted to create. I was also disappointed because that template didn’t work! It said it was down on maintenance, and when I checked back two weeks later, it still was. Additionally, you can only build APK for Android.

Conclusion

The huge number of no-code mobile app builders on the market means that there is also a huge variety and it’s difficult to make a choice on which one to use. I managed to make the MVP of the mobile application I wanted with only two platforms — Appery.io and Microsoft Power Apps — but other platforms also showed very impressive results. Every platform has its own advantages and disadvantages, so instead of telling you which one is the best no-code mobile app maker, I’ll give you a list of things you need to consider before you choose the no-code platform:

  1. Are you ready to spend more than a week developing an app? If not, it’s probably better to find a template for it and just do cosmetic adjustments.
  2. Will you be ok with your app not looking and behaving exactly how you wanted at the beginning? If not, you should probably look at more powerful no-code platforms, including low code.
  3. Do you have a lot of data that changes over time? If yes, probably it’s better to find a platform with an integrated back end so you won’t need to pay for a third-party one.
  4. Pricing is a very tricky question. You need to think about production costs, not just development costs. I covered this topic in more detail here.

Overall, it was easy to create an MVP of my IMDB clone application using these no-code mobile app builders. In my next article, I’ll review more complex functionality like authorization, reviews and ratings, and push notifications.

--

--