๐Ÿ‘€ This is a real sample of the $19 Build Plan, generated for the idea "a mobile habit tracker". Yours is written for your idea, budget and comfort level. Get your own โ†’

Build Plan ยท SAMPLE

Your Build Plan

Working name: HabitStreak (rename it anytime)

A mobile habit tracker app for iPhone and Android with daily reminders and streaks

App type: tracking app ยท Budget: low ยท Timeline: a few weeks ยท Comfort: never

1. Your stack

builder

Bolt.new

In-browser AI builder that scaffolds and deploys web apps (and Expo mobile apps) from a prompt.

๐Ÿ’ฒ Free (1M tokens/mo, 300K/day); Pro $25/mo (10M tokens); Teams $30/member

Visit Bolt.new โ†’
backend

Firebase

Google's backend with realtime database and auth - strong for mobile and realtime apps.

๐Ÿ’ฒ Free Spark plan; Blaze pay-as-you-go with free quotas (Firestore 1 GiB, 50K reads/day)

Visit Firebase โ†’
auth

Firebase Authentication

Comes with Firebase; Google/Apple/email sign-in in a few clicks.

๐Ÿ’ฒ Free for email/social sign-in; 50K MAU free with Identity Platform; SMS billed per message

Visit Firebase Authentication โ†’
extras

PostHog

Product analytics so you know whether people actually use what you built.

๐Ÿ’ฒ Free 1M analytics events + 5K session replays per month, forever

Visit PostHog โ†’
App store publishing

Expo EAS

Builds and submits your iOS and Android apps. Free tier available.

๐Ÿ’ฒ Apple Developer $99/yr ยท Google Play $25 one-time

2. Costs

ItemAt launch
Bolt.new (entry paid plan)$25/mo
Firebase (free tier at launch)$0/mo
PostHog (free tier)$0/mo
Apple Developer Program ($99/yr, for the App Store)$8/mo
Google Play developer account ($25 one-time, not monthly)$0/mo
Total~$33/mo

As you grow: expect roughly $50โ€“100/mo around 1,000 active users. Prices checked 2026-10-15; confirm on each vendor's site.

3. Your app blueprint

Screens

  1. Welcome / onboarding (pick your first habits)
  2. Today: habits to check off
  3. Add / edit habit
  4. Progress: streaks and weekly chart
  5. Settings & reminders

Data to store

  • users (id, email, display_name, timezone, created_at)
  • habits (id, user_id, name, schedule e.g. daily or Mon/Wed/Fri, reminder_time, color, archived, created_at)
  • habit_checkins (id, habit_id, user_id, date, done, note)

Version 1 features

  • Check off a habit in one tap
  • Streak counter and weekly progress chart
  • Daily reminder at the user's chosen time
  • Edit or archive habits

4. Tool setup checklists

Bolt.new

  • โ˜ Sign up at bolt.new
  • โ˜ Choose mobile (Expo) when starting
  • โ˜ Paste the starter prompt
  • โ˜ Preview on your own phone with the Expo Go app (scan the QR code)
  • โ˜ Export to GitHub (or download) when you're ready to build for the stores with EAS

Firebase

  • โ˜ Create a project at console.firebase.google.com
  • โ˜ Add a web/iOS/Android app and copy the config
  • โ˜ Create Firestore in production mode and write security rules
  • โ˜ Stay on the free Spark plan until you need Functions

Firebase Authentication

  • โ˜ In Firebase โ†’ Authentication, enable Email and Google/Apple
  • โ˜ Add your live domain to Authorized domains

PostHog

  • โ˜ Sign up at posthog.com (free tier)
  • โ˜ Paste the snippet or ask your builder to add PostHog
  • โ˜ Create one funnel: visit โ†’ sign up โ†’ key action

5. Step-by-step build: 13 prompts

Paste each prompt into Bolt.new in order. Don't move on until the "done when" check passes.

Step 1: Lock the version 1 spec

I'm building "HabitStreak", a tracking app: A mobile habit tracker app for iPhone and Android with daily reminders and streaks.
Turn this into a one-page spec for version 1 using exactly these pieces, and push back if anything is unnecessary:

Screens:
- Welcome / onboarding (pick your first habits)
- Today: habits to check off
- Add / edit habit
- Progress: streaks and weekly chart
- Settings & reminders

Data:
- users (id, email, display_name, timezone, created_at)
- habits (id, user_id, name, schedule e.g. daily or Mon/Wed/Fri, reminder_time, color, archived, created_at)
- habit_checkins (id, habit_id, user_id, date, done, note)

Must-have features:
- Check off a habit in one tap
- Streak counter and weekly progress chart
- Daily reminder at the user's chosen time
- Edit or archive habits

List what is OUT of scope for version 1 (e.g. web version, admin analytics, referrals). Keep it under 250 words.

โœ… Done when: you can explain the app in one sentence and the spec fits on one page.

Step 2: Build the first screen

Create an Expo (React Native) mobile app called "HabitStreak". Start with ONLY the "Today: habits to check off" screen, using realistic placeholder habits. Style: clean, friendly, large tap targets (min 44px), one accent colour, system font. Don't add any other screens yet.

โœ… Done when: the "Today: habits to check off" screen looks right in the phone preview.

Step 3: Add the remaining screens

Now add these screens with placeholder content, matching the style of the first screen:
- Welcome / onboarding (pick your first habits)
- Add / edit habit
- Progress: streaks and weekly chart
- Settings & reminders
Add a bottom tab bar so I can move between them. No database yet.

โœ… Done when: you can click through every screen.

Step 4: Empty, loading and error states

For every screen, add: an empty state (e.g. "No habits yet, add your first one" with a button), a loading state, and a friendly error message with a retry button. Change nothing else.

โœ… Done when: a brand-new user never sees a blank screen.

Step 5: Create the database

Connect Firebase. Create these collections with sensible field types and required fields:
- users (id, email, display_name, timezone, created_at)
- habits (id, user_id, name, schedule e.g. daily or Mon/Wed/Fri, reminder_time, color, archived, created_at)
- habit_checkins (id, habit_id, user_id, date, done, note)
Add 10 realistic sample habits. Explain in plain English what each one stores.

โœ… Done when: you can see the sample data in the database dashboard.

Step 6: Connect screens to real data

Replace all placeholder content with real data from Firebase. Make create, edit and delete work for habits, with validation and a confirm step before deleting. After each change the screen should update without a manual refresh.

โœ… Done when: a habit you add survives closing and reopening the app.

Step 7: Sign-up, login and data privacy

Add sign-up, login, logout and password reset using Firebase Authentication (email + Sign in with Apple + Google; Apple requires Sign in with Apple if you offer other social logins on iOS). Write Firestore security rules so users can only read and write their own documents; never leave test-mode rules on. Add an account screen with a Delete account button (Apple requires in-app account deletion).

โœ… Done when: two test accounts can't see each other's data.

Step 8: Core logic: check-ins and streaks

Add the core habit logic: tapping a habit on the Today screen creates or removes today's row in habit_checkins. Calculate the current streak (consecutive scheduled days completed) and the best streak, and show a 7-day progress chart on the Progress screen. Respect each user's timezone so "today" is correct.

โœ… Done when: the main feature works for a real user from start to finish.

Step 9: Notifications

Add push notifications with expo-notifications: ask permission after the user's first habit (not on launch), store the Expo push token per user, and send a daily reminder at each habit's reminder_time. Add an on/off switch in Settings.

โœ… Done when: a reminder arrives on a real phone.

Step 10: Owner / admin view

Add an admin area only I can access (check my email/role on the server): see all users and habits, search them, and fix or remove bad data. Show simple numbers: total users, new this week.

โœ… Done when: you can answer 'how many people used it this week?'.

Step 11: Polish, speed and accessibility

Review the whole app screen by screen: fix confusing labels, make text readable (min 16px), add alt text and labels for screen readers, ensure good colour contrast, and make it fast on a slow phone. List the changes before making them and change nothing else.

โœ… Done when: a friend can use it without you explaining anything.

Step 12: Analytics and feedback

Add PostHog with these events only: signed_up, habit_created, returned_next_day. Add a small "Send feedback" link that emails me. Don't track personal data in events.

โœ… Done when: you can see a sign-up โ†’ first habit funnel.

Step 13: Prepare store builds

Prepare the app for the stores with Expo EAS: set the app name "HabitStreak", a unique bundle identifier (e.g. com.yourname.habitstreak), version 1.0.0, app icon (1024ร—1024) and splash screen in app.json. Create eas.json with development, preview and production profiles. Remove test data and switch any keys to production. Give me the exact commands to run.

โœ… Done when: an EAS build installs on your own phone.

6. When the AI gets stuck

โ†ฉ๏ธ Rollback in Bolt.new: Use Bolt's version history to restore the last working version, then re-ask in smaller steps. Export to GitHub regularly so you always have a copy.

Diagnose before fixing

Don't change any code yet. Here is the exact error and what I did right before it:
[paste error]
Explain in plain English what is causing it, list the 2 most likely causes, and propose the smallest possible fix. Wait for my OK.

Break a fix loop

We've tried to fix this 3 times and it keeps breaking. Stop. Revert your last changes to the files involved, then describe the simplest different approach that avoids the problem entirely. Change only the files needed.

Protect what works

Only change [screen/feature]. Do not modify any other file, component, style or database table. Before editing, list exactly which files you will touch.

Check the data layer

The screen shows nothing / the wrong data. Check, step by step: is the user logged in, does the security rule allow this read, does the query return rows, and is the result mapped to the screen? Report each check's result before fixing.

Reset Bolt.new's context

Summarise this project for a fresh session: what the app does, the screens, the data tables, what works, and the one thing currently broken. Keep it under 200 words.

7. Publish to the App Store and Google Play

  1. Export your project to GitHub (or download it) so you can run Expo's tools. Create a free Expo account at expo.dev.
  2. Install the EAS command-line tool: `npm install -g eas-cli`, then `eas login` and `eas build:configure` in the project folder.
  3. Join the Apple Developer Program ($99/year) at developer.apple.com. Enrollment can take a day or more, so start early.
  4. Create a Google Play Console developer account ($25 one-time) at play.google.com/console. New personal accounts must run a closed test (currently 12 testers for 14 days) before releasing to production.
  5. Build: `eas build --platform ios` and `eas build --platform android` (production profile). EAS has a free tier; builds may queue.
  6. iPhone beta: `eas submit --platform ios`, then add yourself and friends as testers in TestFlight (App Store Connect).
  7. Android beta: `eas submit --platform android` to an internal or closed testing track and invite testers.
  8. Store listing: app name ("HabitStreak"), short description, full description, keywords, 1024ร—1024 icon, screenshots for the required phone sizes, support URL and privacy policy URL.
  9. Fill in Apple's App Privacy details and Google Play's Data safety form honestly (what you collect and why).
  10. Give reviewers a demo login if the app requires an account, then submit for review. Plan for a few days and possible change requests.
  11. After approval, release, and keep a web landing page with store badges and your privacy policy.

8. Pre-launch safety checklist

9. Backup stack (if your first pick doesn't work out)

Instead of Bolt.new

Lovable

If app-store review or fees slow you down, launch a mobile-friendly web app (installable PWA) in Lovable first and validate demand before going native.

๐Ÿ’ฒ Free (5 build credits/day, up to 30/mo); Pro from $25/mo (100 credits), $21/mo billed annually

Instead of Firebase

Supabase

Supabase if you prefer a SQL database (Postgres) with built-in Row Level Security.

๐Ÿ’ฒ Free (500 MB DB, 2 projects, pauses after 1 week idle, 50k MAU); Pro from $25/mo

10. Pitfalls to avoid

Launch day checklist

StackPilot Build Plan ยท usestackpilot.app ยท Prices from official pricing pages (checked 2026-10-15); always confirm before you buy.

Want this for your app?

Describe your idea in the picker, then get your own Build Plan for $19. 14-day no-questions refund.

Start with the free picker โ†’