Skip to content

Best Practices

A few habits that will save you time and reduce the number of rebuilds you need.

Start with a clear brief

Before you type your first message, take a moment to define:

  • What the app does in one sentence
  • Who uses it
  • The 3 most important things a user needs to do
  • What's out of scope for this version

A clear brief means fewer clarifying questions, a tighter plan, and a build that matches your intent from the start.

Read the plan before approving

The plan is your only checkpoint before the build begins. If something looks wrong, correct it before approving, fixing a plan takes seconds, fixing a built app takes much longer.

Build in phases

Start with the smallest useful version of your idea. Get it working, confirm it's right, then add the next piece. Trying to build everything at once leads to a wider plan, more surprises, and harder corrections.

Use Discuss mode before big changes

Before any prompt that touches a significant part of your app, use Discuss Mode first. Talk through the approach without committing to a rebuild. It's one of the most effective habits you can build.

One change at a time

Each follow-up message should do one thing. If something breaks, a single change per message makes it straightforward to identify the cause.

Connect services after the UI is stable

Set up Supabase, Stripe, and other services after the app looks and behaves the way you want. Changing the frontend after connecting a database can cause the two to fall out of sync.

Use test credentials while building

Use test API keys (like Stripe's pk_test_...) throughout development. Switch to production keys only when you're ready to go live. This avoids real charges and real emails during testing.

Follow this sequence to avoid backtracking:

1. Write your brief
   ↓ Who uses it, what they do, what's out of scope
2. Describe and approve the plan
   ↓ Correct anything before approving — it's faster than fixing a built app
3. Build the core UI
   ↓ Get the layout and navigation right first
4. Test in Preview
   ↓ Click through every flow as a real user would
5. Connect services
   ↓ Supabase, Stripe, Resend — only after the UI is stable
6. Final check → Publish
   ↓ Use the checklist below before going live

Pre-publish checklist

Before you publish, run through this quickly:

  • [ ] All required services are connected
  • [ ] App loads correctly in Preview
  • [ ] Core flows work end to end
  • [ ] Tested after logging out and back in

MonstarX Documentation