Ivan here, co-founder of Modaal.
I founded my first mobile app development company 18 years ago and released hundreds of mobile apps to clients, and as my own products.
Over the years I built myself a repeatable, robust framework for building mobile apps, that allowed me to stay super-productive even in the before-AI era, beating competitors on the price, while still delivering exceptional-looking, scalable, and easily maintainable mobile apps.
Modaal
Hey ProductHunt!
Ivan here, co-founder of Modaal.
I founded my first mobile app development company 18 years ago and released hundreds of mobile apps to clients, and as my own products.
Over the years I built myself a repeatable, robust framework for building mobile apps, that allowed me to stay super-productive even in the before-AI era, beating competitors on the price, while still delivering exceptional-looking, scalable, and easily maintainable mobile apps.
The first Modaal release on Product Hunt 7 months ago brought my hand-crafted, battle-tested, team-scale-level development process to individual developers and small teams via Modaal - but only for iOS.
Today we’re making Modaal build cross-platform native apps for Android and iOS simultaneously. Your app shares business core, while each platform stays 100% native. It’s like ReactNative but so much better - because you never leave the native app ecosystem. Every UI detail stays Human Interface Guidelines and Material-compliant. You get access to every native SDK, capability, low-level hardware and every bit of performance, while your business logic stays the single source of truth between platforms.
This works by plugging your current coding agent - Claude Code, Codex, Cursor - and many others, including your favorite open-source ones. You use your existing subscription. Modaal gives your agent the initial structure and effective coding tools.
What Modaal also gives you, that no other vibe-coding tool has - the workflow. For every feature you ask the agent to implement, it writes a plan first. You review the plan and approve it, before giving it back to the agent. Planning is even more important in the era of vibecoding - because as your app grows, past plans become as important as the written code - they allow you to stay on top of the project, able to guide it, instead of the agents driving you blindly. Personally, I spend 80% of my time working and reviewing plans, so the code the agent writes has no surprises for me, and Modaal gives this to you as well.
So, get Modaal for free, try it, join our Discord community, share the feedback, ask questions - and join our Buildathon events. We’ve run four of them already, with hundreds of users building and releasing their apps.
Happy building!
@ivan_misuno Being able to plug Cursor right into this workflow makes a lot of sense for how I already work, congrats for launch🙌
Modaal
@vikramp7470 Thanks! Yes, this was exactly our idea from the beginning.
@ivan_misuno That's great.. all the best for launch
Modaal
@vikramp7470 Thank you!
@ivan_misuno nice launch! using claude code, codex, or cursor with the existent subscriptions is a nice the approach,
how much the extra work does this usually create the matched with buildings for the just one plateform???
Modaal
@vipul_kumar1280 Thanks for the question! I'm in the middle of actually gathering detailed statistics using different frameworks and architectures. Preliminary, using Modaal (and the underlying Duet framework - https://docs.modaal.dev/duet), the effort to produce matching Android and iOS apps is around 60% higher than to produce a single app only. So you basically get 2 apps for the cost of 1.5.
nice product! this is exactly what i've been looking for for a while, but i'm on windows :( do u plan to release a windows version too?
Modaal
@luca_ardito I'm interested in your use case, can I ask a few questions? Do you plan to work/release an Android app only, or both Android and iOS? How long are you planning to work on them (in weeks/months)? We might add support for building Android apps natively on Windows, is there is enough demand. Alternatively, you might want to check @Bitrise https://bitrise.io/platform/remote-dev-environments for running Modaal remotely - with full iOS and Android support.
@ivan_misuno thanks for the suggestion!
i'm planning to release both an Androind and an iOS version
if the apps go well, i'd definitely be interested in working on them for months (like improving them, adding more features, etc...)
Modaal
AuthorAI
I want to use this in Windows . Any chance?
Modaal
@shuvodip Thank you for the question! I'd like to hear more about your use case. Are you interested in working on Android apps solely, or Android and iOS simultaneously? The latter would require a cloud build/run environment, which will add in cost. Building Android apps on Windows is possible though.
Congrats on the launch! What happens when a feature work differently on each platform?
Modaal
@joy_gu Thanks for the question! Duet (the framework behind Modaal-build Android + iOS apps) supports two variants of "features": 1) a Kotlin-multiplatform implementation that defines types, protocols, and the the behavior (i.e. the reducer that produces state changes and effect), which is consumed by both iOS and Android app shells (thin SwiftUI and Compose surfaces that render the state); or 2) a "dual" implementation (Kotlin- and Swift-based reducers), that are validated against each other by behavioral tests that produce and then compare the fixtures - that two cores behave identically -- https://docs.modaal.dev/articles/duet#what-you-get
So, ideally, there is no situation when two cores work "differently".
Modaal
@nathanwindsor Do you have any specific mobile app wrapper for elixir/phoenix in mind?
Because Modaal builds native apps (Swift/Kotlin) on the Duet ramework (again, native mobile app-level framework for native Swift/Kotlin apps). They are not directly comparable in any meaning.
What is the evidence in the build that proves that both applications act in the same way?
Btw, Congrats @lenaavramenko & @farbodsaraf ✌️🚀
Modaal
@lenaavramenko @farbodsaraf @aymi_malik Thanks!)
The feature parity is guaranteed by the framework:
1) You (the agent!) write a scenario (https://docs.modaal.dev/articles/duet-glossary#scenario) using a DSL (https://docs.modaal.dev/articles/duet-glossary#dsl)
2) The scenario produces a feature fixture (https://docs.modaal.dev/articles/duet-glossary#fixture)
3) The fixture is then replayed (https://docs.modaal.dev/articles/duet-glossary#replay) against the Kotlin-MP core (https://docs.modaal.dev/articles/duet-glossary#core) or the twins (https://docs.modaal.dev/articles/duet-glossary#twin)
Happy to discuss further - please join our community Discord: https://discord.gg/ng84Jm92tm (we also run Buildathons and events!)
This launch came at the right time! I have an app on iOS that I want to launch on Android and another one I am testing beta done with lovable and planning to launch as an app. Do you think I can take my 2 apps in 2 different stages and move it to Modaal for native app launches?
Modaal
@norteapp Hi Jose, thanks for your question! I'd like to assist you starting up with Modaal to port your two apps. Please join our community Discord and we can definitely start building! https://discord.gg/ZDErXYFZ4