Hey @nadavma2, totally agree with you. This really is a dream come true for every Adalo maker, and I want to add some thoughts because I think a lot of people reading this still don’t realize how far you can actually take it.
I’ve been building on Adalo since 2020 as a freelancer (Cheip Studio), and honestly LLMs have changed everything about how I work. Let me share how I do it.
My setup
I work on a Windows PC with VS Code. I started out using Gemini. It was solid and got me going, but after a while I switched to Claude and never looked back. For component code, the quality of what Claude produces is just on another level. It understands architecture, it remembers the context of a long conversation, and it pushes back when something doesn’t make sense. Gemini and ChatGPT are great too, but for the kind of work I do Claude has become my main tool.
The range of what you can build
On the simple side I build small components like a button, a slider, a rating bar, an OTP input. One screen, a handful of properties, done in an afternoon.
On the other extreme, I build components that are essentially full apps inside one component. To give you the most extreme example I’ve done so far: Car Gatcha Collector Game, a single custom component of around 2200 lines. It handles 8 or 9 internal screens, all the navigation between them, animations, the whole game logic, missions, collections, a marketplace, activity feed, everything. From Adalo’s point of view it’s just one component dropped on one screen. But the user experiences a complete app with a fluidity and design that would simply be impossible to achieve with default Adalo components and native Adalo navigation.
When you go this big, there are things to keep in mind: how the component remounts, how you structure the manifest, how you design your properties, how Android behaves differently from iOS. You learn this stuff by doing, and the LLM helps you solve problems as they come up.
The real game changer: use JSON instead of collections
This is the part I really want people to hear, because it’s where you get the biggest leap in performance.
Adalo collections are slow. Every read and every filter is a network call. If your app has a lot of data, handling that with native Adalo collections and relationships would make the app painful to use.
So what I do in Car Collector Game: instead of having an Owned Cars collection with tens of thousands of records across all users, I store each user’s entire garage as a JSON string inside a single text property on the User collection itself. The component reads that JSON at startup, parses it, and from that point on everything lives in memory. When the user buys, sells, or swaps a car, the component updates the JSON and writes it back to that one field.
The result is an app that feels ten thousand times more fluid. No waiting, no loading lists, instant transitions. And your Adalo database stays tiny and clean instead of exploding with records.
One honest piece of advice
You said “don’t be afraid of the code” and I want to echo that, but with one important note. You don’t need to become a programmer, but you do need to know the basics. Understand roughly what your index.js is doing. Know what a prop is, what state is, what a component re-render means. Read what the LLM gives you before pasting it in.
Blind copy and paste is the fastest way to end up with a broken app you can’t fix. Ten minutes of learning the basics saves you hours of frustration later, and it makes the LLM ten times more useful because you can actually have a conversation with it instead of just begging it to make the error go away.
But once you have those basics, it’s genuinely a new era. You go from “what Adalo lets me do” to “what I can imagine.”
And yes, if Adalo ever lets us build custom components directly with Ada, that would be a huge move for the makers community.
Eugen