The test task
Every tool starts from an empty project and receives the identical prompt below (pasted verbatim). The tester may then send up to 5 follow-up prompts, each describing an observed bug in plain language, with no code, stack traces or file names supplied by the tester. No hand-written code. App builders (Lovable, Bolt.new, v0, Replit) deploy with their own one-click hosting. Editor and terminal agents (Cursor, Windsurf, Claude Code, GitHub Copilot, Codex) get the same empty Git repo plus a blank free Supabase project and a free Vercel project, and must do the deploy themselves through the CLI. The clock stops at the first live URL that passes the checklist, or after 5 fix prompts or 90 minutes, whichever comes first.
The exact prompt
Build "Streaks", a habit tracker web app. 1. Users sign up and log in with email + password, and can log out. 2. A logged-in user can create, rename and delete habits (name, optional emoji, target: daily). 3. Today view: every habit has a check box to mark it done for today; tapping again un-marks it. 4. Each habit shows its current streak (consecutive days done, including today if done) and its best streak. 5. History: a 30-day grid per habit showing done/not-done days. Tapping any of the last 7 days toggles it, so missed check-ins can be fixed. 6. Data is stored in a real database and survives logout, refresh and a different browser. 7. Users can only ever see and change their own habits. 8. Each user can turn on a public read-only share page at /u/<username> showing their habits and streaks (no check boxes, no private data); it can be turned off again. 9. Works on a 390px-wide phone screen and on desktop. 10. Deploy it to a public URL and tell me the URL.
Pass/fail checklist (12 items)
- Sign up with a new email + password works
- Log out, then log in again, works
- Create a habit; rename it; delete it
- Mark a habit done today; un-mark it
- Marking today and the 2 previous days shows a current streak of 3; un-marking yesterday drops it to 1
- Best streak is shown and is ≥ current streak
- 30-day history renders with correct done days
- Data persists after refresh and in a second browser
- User B cannot read or modify User A's habits (UI and direct API/database request)
- Public share page shows habits and streaks read-only, and returns not-found once sharing is turned off
- Usable at 390px width (no horizontal scroll, tappable controls)
- Live public URL loads over HTTPS
What we measure
- Works on first deploy: checklist items passing on the first live URL, before any fix prompt
- Fix prompts needed to pass the full checklist (max 5)
- Time from first prompt to a live URL that passes the checklist
- Cost of the run on the cheapest plan that can complete it (subscription share + metered usage)
- Code quality: build passes, no secrets in client code, auth enforced server-side, Lighthouse accessibility score, dependency audit
Scoring rubric (100 points)
| Criterion | Points | How it's scored |
|---|---|---|
| Works on first deploy | 25 | 25 × (checklist items passing on first live URL ÷ 12) |
| Final functionality | 25 | 25 × (checklist items passing at the end ÷ 12) |
| Fix prompts | 15 | 15 with 0 fix prompts; minus 3 per prompt used |
| Time | 10 | 10 if ≤ 20 min; minus 1 per extra 7 min (floor 0); 0 if no passing URL |
| Cost | 10 | 10 at $0; minus 1 per $2 of run cost (floor 0) |
| Code quality & security | 15 | Auth/data isolation enforced server-side: 6; no secrets in client bundle: 3; production build passes with no errors: 3; Lighthouse accessibility ≥ 90: 3 |
Candidates (9)
Methodology
Every candidate gets the identical task and inputs, on the cheapest plan that can complete it, tested in the same week. We publish each tool's output, settings, what the run cost and the test date. Rankings only change when we re-test. Read the full methodology →
FAQ
Have you tested these tools yet?
Not yet. This ranking is in progress. Candidates are listed alphabetically, not ranked, until results are published.
Why compare app builders with code editors?
Because people choose between them for the same job. We publish one table but label each tool as an 'app builder' or a 'developer tool', because editor and terminal agents get a database and hosting account set up for them, while app builders provide their own.
Do you write any code?
No. The tester only sends the fixed prompt and up to 5 plain-language bug reports. Every prompt is published.
Can a tool pay to rank higher?
No. Paid placements never affect rankings.