From Prompt to App Store in Under 30 Minutes
Your phone is in your hand. An app idea is in your head. The wall between them, historically, has been six months of calendar time, a designer on Fiverr, a React Native tutorial you never finished, and the three page App Store submission checklist you put off forever.
We're going to walk through tearing that wall down in thirty minutes.
This isn't a highlight reel. It's every step we actually take, timestamped. Use it as a playbook the next time you sit down to launch something.
0:00. Before you open Appsanic (2 min)
This is the step most walkthroughs skip, and it's the most important one.
Sit for two minutes and answer three questions:
- Who is this app for? Not "everyone." One specific person. If you can't name them, your empty states, copy, and home screen will all drift toward generic and your app will feel like someone else's.
- What's the one thing the user does every time they open it? One primary action. Everything else is secondary.
- What would make them come back tomorrow? If you can't answer this, the app isn't finished yet, even if it technically works.
These aren't academic. They become your prompt. They shape every decision the agent makes over the next half hour. Skip this step and you'll spend twenty minutes building an app whose home screen you don't actually like, only to rebuild it.
2:00. Describe the app (2 min)
Open Appsanic. New project. Type one sentence that answers all three questions above.
Not a spec. A sentence.
Examples that work well (each launched a real app):
"A daily journaling app that prompts me once each morning, tracks my streak, and lets me browse past entries on a calendar."
"A marketplace for neighbors to lend tools to each other. List a tool, accept a booking, collect payment, and get a reminder before the return date."
"A simple habit tracker built for small accountability groups. Four friends, five habits each, checkmarks shared to the group chat."
Each sentence answers: who it's for, what they do, why they return.
Hit build. On Pro, the next ten seconds are planning. Read the plan when it appears. Push back on any assumption you disagree with before the agent writes code. "Actually, I don't want Stripe. This is a free app" or "use Supabase realtime for the group chat, not polling" at this stage is five words. An hour from now it'd be an hour of rework.
4:00. First build (8 min)
The agent starts writing. You can watch it work file by file if you want, but most people tab away and come back.
Eight minutes in, a live preview appears on your phone via Expo. If you took the journaling example above, you'll see:
- A home screen with today's prompt and a big "Write" button
- A writing view with a text area and save button
- A calendar view with entries shown as filled dots
- A streak counter in the header
- An empty state that says something useful ("Your streak starts today")
It's a working journaling app. You typed one sentence eight minutes ago.
Is it perfect? No. The prompt of the day might be hardcoded (you'd want rotation). The streak calculation might break on day two because of a timezone edge case. The writing view might not dismiss the keyboard when you tap outside. These are the kinds of things a thoughtful engineer catches on a second pass.
That's what step three is for.
12:00. Refine (12 min)
This is where you stop being a passive observer and become a product owner.
Open a conversation. Describe what's wrong. Not with implementation details, with user facing outcomes.
Prompt patterns that consistently work:
Name the user experience, not the fix:
Bad: "Fix the streak logic at line 47."
Good: "The streak doesn't carry to the next day when I write entries back to back. Midnight should roll the counter."
Include the context so the agent can find the root cause:
"When I tap an entry in the calendar, I expect to read that day's entry. Right now it opens the writing screen in edit mode, which feels wrong. Make calendar taps open read only, with an 'Edit' button if the user wants to change it."
Batch related changes so the agent stays in one mental context:
"Three things on the settings screen: change the default reminder time to 8 AM, add a 'delete all data' button that confirms twice, and make the reminder time picker use the native iOS and Android style."
Each of these is two to four sentences. Each lands in two to four minutes. By twenty four minutes in, you have a real app: a coherent daily ritual, a satisfying streak, a calendar that reads your mind, and a settings screen that isn't an afterthought.
24:00. Preview on your phone (2 min)
If you haven't opened Expo Go on your phone and scanned the QR code, do it now. Every build streams live to your device. No compile step, no cable, no provisioning profile. You poke through the app. You notice something you want to change. Write one more sentence. The app updates in seconds.
This is the feedback loop we couldn't stop talking about in the early days. Real device, real speed, zero toolchain. Two minutes of poking and pressing and you know exactly which rough edges still need sanding.
Pro tip: hand your phone to someone else while the app is running and say nothing. Watch where they tap that surprises you. Their first ten seconds are the most honest usability test you'll ever get.
26:00. Export to your own GitHub (2 min)
Hit "Export to GitHub" in the editor. Appsanic creates a new repo in your account, initializes it with the codebase, and opens the first PR. You now own the code. Every file. Every dependency. Every decision the agent made.
If you cancel your subscription tomorrow, the repo stays. The Supabase project stays. Your deployed builds stay. The agent's work is yours, irrevocably, from this moment forward.
Open a couple of files. They read like code a senior engineer would write: clean imports, typed props, split into reasonable chunks, no any where there should be a proper type, no forgotten console.log statements. That's not an accident. The agent isn't allowed to build with any of those.
28:00. Submit to the App Store (time varies)
This is the part every tutorial skips. We aren't going to.
Prerequisites (one time, outside this 30 minute walk):
- An Apple Developer account ($99 per year). Sign up at developer.apple.com.
- An App Store Connect record for your app (name and bundle ID).
In Appsanic:
- Hit Publish in the top bar. On the first step, connect your Apple account by pasting an App Store Connect API key. The dialog walks you through making one, and you never hand over your password.
- Confirm your app's name, bundle ID, and version.
- Pick App Store, check the credit cost, and hit Publish. Appsanic builds the release in the cloud and uploads it straight to TestFlight. No Mac, no Xcode, no
.ipato shuttle around. Ten to twenty minutes later it's in App Store Connect.
In App Store Connect:
- Fill in the App Store listing: description, keywords, age rating, privacy policy URL, support URL.
- Upload screenshots for the required iPhone sizes (6.7", 6.5", 5.5") and iPad if your app supports it.
- Hit "Submit for Review."
Apple's review takes 1 to 3 days. Nothing we can do about that one.
30:00. What just happened
Thirty minutes of focused work. You now have:
- A working React Native app, iOS and Android
- A live Postgres backend with row level security correctly configured
- A GitHub repo you own, pushed from day one
- Push notifications already wired
- Your release uploaded to TestFlight, one tap from submission
- Two to three decisions still on your plate (metadata, screenshots, pricing)
What you did not do in those thirty minutes:
- Write a line of React Native code
- Install any dependencies manually
- Fight with Xcode
- Debug a certificate provisioning error
- Read the React Navigation docs
Those are the parts we removed.
When things go wrong
The walkthrough above is what happens when the session is clean. Sometimes it isn't. Three patterns and what to do:
The agent starts building but produces something that doesn't match what you described. Usually the fix is scope. Your prompt was larger than it seemed. Restart the conversation with a tighter prompt: "Focus only on the reminder feature for now, ignore the calendar." Build one thing at a time. You can glue features together later.
The preview goes blank or the build errors. Nine times out of ten this is a missing environment variable or a Supabase policy mismatch. Open the Supabase panel in the editor, check that the tables the agent created match what the code expects, and that RLS is enabled on the ones that need it. Paste the preview console error into a new message. The agent will diagnose.
You write two prompts and the second undoes part of the first. This is a context problem. Each new session starts fresh. If you want the agent to remember a constraint (say, "keep using Tailwind, don't add styled components"), state it at the start of the new conversation. Or anchor it in the codebase. The agent reads the existing conventions before writing new code.
Prompt templates that work
For copying:
New feature:
Add [feature] to the app. Users should [experience or outcome]. Use [existing conventions or constraints]. I'm not sure about [ambiguity]. Propose an option.
Bug fix:
The [specific user facing behavior] is wrong. Expected: [what should happen]. Actual: [what's happening now]. I think the issue is somewhere around [file or area] but I'm not certain.
Refactor:
Change how [feature] works across the whole codebase. Every place that currently [pattern A] should now [pattern B]. Keep [thing to preserve] unchanged.
Polish:
The [screen or component] looks rough. Tighten the typography, match the spacing to [reference screen], and make sure the empty, loading, and error states all feel deliberate.
What humans still do
We should be honest about what's still on your plate.
Taste. The agent will build what you describe. It's a tremendously good typist, but it has no opinion on whether your app idea is good. Picking the idea, picking the audience, picking the pricing, those are yours.
The first users. Launching an app on the App Store and getting people to use it are different problems. The first is solved in this walkthrough. The second is marketing, community, DMs to people who would care. Nothing we can do for you there.
Edge cases nobody's hit yet. The app works on your phone. It probably works on most phones. But the first time someone with an old iPad opens it, or a user on a painfully slow 3G connection, or someone with the system font size cranked to max, you'll find things. The agent fixes them fast. But they have to be reported first.
The long tail of polish. The difference between "it works" and "it feels professional" is often a hundred small tweaks. The agent helps enormously (a single prompt can reshape an entire screen), but noticing what needs tweaking is your job.
The point
Nothing about this walkthrough is a marketing exaggeration. The thirty minute number is what a focused, non technical founder gets to when they stop second guessing themselves. It's what happens when the bottleneck shifts from "writing code" to "making decisions about what to build."
Half the people who read this will close the tab thinking it sounds too good to be true. The other half will open Appsanic and try it. If you're in the second group, we'll see you inside.
