Skip to main content
Prompting is how you direct Rocket using clear, natural language. You describe what you want (screens, logic, fixes, flows) and Rocket figures out the how.This guide covers:
  • The S.I.M.P.L.E. framework for writing effective prompts
  • Core prompting strategies (zero-shot, instructional, one-shot)
  • How to build features incrementally
  • Common mistakes and how to fix them
Looking for ready-to-use prompts? Browse the Prompt library. Running into issues? Check the Debugging guide.

Start with clear intent

Strong prompting always starts with one question: What should this app, screen, or feature do, in one sentence? Write that sentence first. Then layer in:

What

What the user can do (core actions)

Where

Where it lives (which screen, component, or flow)
Avoid vague prompts like “Make this better”, “Fix the layout”, or “Clean up the logic.” These feel fast to write but are slow to fix.A slightly longer, more specific prompt is almost always faster overall.

The S.I.M.P.L.E. framework

Use the S.I.M.P.L.E. framework as a quick checklist before you send any substantial prompt. You do not need to label each part in your prompt. Just make sure these ideas are present.

S - Specific

Vague:
Specific:
Specific prompts are faster overall because you skip back-and-forth corrections.

I - Incremental

Break big ideas into small, safe steps.
Each prompt should move the app forward in a way you can quickly review.

M - Meaningful context

Include only the details that change the outcome, enough to be clear, not a full spec.
If a teammate would not need a detail to build it, the AI probably does not either.

P - Pattern-aware

When you already have good examples in your app, reuse them.
This keeps your app consistent without rewriting every requirement.

L - Limited scope

Tell Rocket what not to change so it does not “help” too much.
Use @ commands to automatically limit changes to specific files or folders, ensuring edits stay focused and predictable.
  • @pages/dashboard.jsx only update the header layout. Do not change navigation links or data fetching.
  • @components/card.jsx fix spacing between title and content. Keep all other styling unchanged.

E - Explicit structure

Describe the layout in the same top-to-bottom order a user experiences it.
Logical order helps Rocket structure the screen cleanly on the first try.

Self-check before sending

Before you submit a prompt, ask yourself:
  1. Do you know exactly what “done” looks like?
  2. Is it Specific, Incremental, contextual, Pattern-aware, Limited, and Explicitly structured?
  3. Could you review the result in under 5 minutes?
If any answer is “no”, shrink the prompt or clarify the outcome.

Basic prompting strategies

Once you are comfortable with S.I.M.P.L.E., these core strategies cover most day-to-day work.

Zero-shot

Direct instructions. Use when the task is small and clear, and you do not need to match an existing pattern.
Combine with S, L, and E from S.I.M.P.L.E. to keep it specific, scoped, and structured.

Instructional

Step-by-step “how.” Use when layout and structure really matter.
You are telling Rocket how to build it, not just what to build.

One-shot

“Like this, but for X.” Use when you already have a good example in your app and want to mirror it.
This leans on the Pattern-aware part of S.I.M.P.L.E.

Plan, Build, Refine

Think of your prompting workflow in three lightweight phases.
1

Plan just enough

Spend a minute writing down:
  • What you are building
  • Who it is for
  • The top 3 jobs it must do well
2

Build in controlled steps

Use Incremental and Limited scope:
Then:
3

Refine safely

Once something basically works, avoid “start over” prompts. Instead:
Use / commands to make targeted changes - swap components, reorganize sections, or fix issues - without rebuilding from scratch.

Common mistakes and how to fix them

These common prompting mistakes map directly to the S.I.M.P.L.E. principles. Use this table as a quick reference when prompts are not working as expected.

The Vague Vanisher

Mistake:
“Nice” is subjective and open to interpretation. Rocket does not know what “nice” means to you.
Fix:

The Everything Bagel

Mistake:
Too many responsibilities in one prompt. Hard to review, debug, or roll back.
Fix (break it into smaller prompts):
Then build incrementally using iterative refinement.

The Missing Data

Mistake:
“All” is undefined. No source table, fields, ordering, or filters specified.
Fix:

The Assumption Trap

Mistake:
Assumes Rocket knows your definition of “user-friendly” and “fast.”
Fix:

The Silent Change

Mistake:
No definition of what “clean” means and no boundaries on what should stay the same.
Fix:
Or with commands: @utils/helpers.jsx refactor helper functions into separate files. Do not change function logic or parameters.

The Reverse Order

Mistake:
Describes elements bottom-to-top instead of top-to-bottom.
Fix:

The Constraint Gap

Mistake:
Too vague. No boundaries on what can be changed.
Fix:
Or with commands: @components/header.jsx update only the text color and font size. Do not change layout or navigation.
When a prompt is not working, check which S.I.M.P.L.E. principle it violates. Most mistakes fall into one of these categories: being too vague (S), asking for too much (I, L), missing context (M), or unclear structure (E).

Prompting for integrations

When prompting Rocket to work with external services, being specific about names, keys, and configuration makes the difference between a working integration and a broken one.

Stripe

Always include the exact product name, price, billing interval, and mode (test or live).
Key details to include:
  • Product or plan name (for example, “Pro Plan”, “Starter Pack”)
  • Exact price and billing interval (for example, “29/month","29/month", "199/year”)
  • Test or live mode
  • Success and cancel redirect URLs
  • Whether it is a one-time payment or a subscription

Supabase

Always name your tables, list the columns with their types, and specify which auth method you are using.
Key details to include:
  • Table name and column names with types
  • Auth method (email/password, Google OAuth, magic link)
  • RLS requirements (who can read, write, update, delete)
  • Redirect paths after auth events
  • Whether to use real-time subscriptions

AI features

Always specify which model to use, the desired tone or style of output, and any context limits.
Key details to include:
  • Model name (for example, gpt-4o, claude-3.5-sonnet, gemini-pro)
  • Tone or style (for example, professional, casual, technical)
  • Output format (for example, bullet points, paragraph, JSON)
  • Maximum length or token limit
  • Fallback behavior if the API call fails

Email

Always specify the trigger event, recipient, subject line, and body content.
Key details to include:
  • Trigger event (for example, signup, purchase, password reset)
  • Recipient (who gets the email)
  • Subject line
  • Body content and any dynamic data to include
  • Which email service to use (Resend, SendGrid)
  • API key location (environment variables)

Quick comparison