# Writing effective prompts

> Practical techniques for getting the app you picture: be concrete, build in steps, describe the look, and fix things precisely.


## Be concrete

"A CRM" leaves everything to chance. "A CRM for a two-person agency: companies, contacts and deals; deals move through Lead → Proposal → Won/Lost on a board" gives the AI a structure.

## Build one piece at a time

Get the core flow right, then add features in separate messages: "add search to the deals board", then "add a weekly revenue chart".

## Describe the look in words

Mood, colors, density and references work well: "dark, dense, like a developer tool", "playful, rounded corners, pastel colors".

## Point at things precisely

Name the page and element: "on the deals board, make the Won column green" beats "change the colors".

## Say what to keep

When a change is risky, add "keep everything else the same".

## When something breaks

If the preview shows an error, paste it or describe what you see: "clicking Save on the deal form does nothing". Draftship already repairs build errors automatically; runtime problems need your description.

## Useful phrases

- "Save … to the database" — creates a table instead of keeping data in the browser.
- "Only the person who created it can edit or delete it" — sets [permissions](/docs/security/managing-data-permissions).
- "Add sign up and login" — adds [user accounts](/docs/security/managing-login-and-registration).
- "Use AI to …" — calls [AI in your app](/docs/logic/ai-in-your-app).
