Ship the form your AI app needs in the next ten minutes.
You are deep in a Cursor session. The product needs a waitlist, a beta-feedback survey, a contact form. You do not want to write a database migration, an ingest endpoint, a spam filter, an email notifier. Paste a JSON spec, get a hosted URL, ship the tweet. Webhooks if you outgrow the inbox.
Type the spec. Watch the form render.
Same JSON shape we accept on real templates. No SDK, no install. Edit the left, see the right - then go ship.
Edits re-render the form on the right.
·· live preview
Beta signup
·· sandbox · nothing is sent or saved
Three forms every AI side-project hits in week one
You will not finish the launch tweet without all three. We pre-built them so the build does not bottleneck on form infra.
The waitlist
Email + "what are you building?" Drop the URL in the launch tweet, the README, the Discord. Submissions land in your inbox; promote anyone to a real account in one click later.
The beta-feedback form
Rating, what worked, what did not. Five minutes after first user finishes, you have typed signal you can paste back into Cursor as a TODO list.
The contact form
Because the day someone wants to pay you, you should not be debugging Mailchimp.
How a vibe-coder ships a form before lunch
Numbered for the README - same flow we follow ourselves.
Describe the form
Either type a JSON spec into the playground above, or use the QuickForm generator at /quickform and let the LLM write it for you.
Hit publish
You get a hosted URL ending in /f/{public_id}. Drop it anywhere a link goes - landing, README, tweet, Discord pin.
Watch submissions land
Inbox shows each row with typed fields. Email notifications by default; webhook later if you need it in your own app.
Iterate when the launch tweet pops
Add fields, branch the survey, slap a captcha on it - the URL stays the same.
Forms are the unsexy 20% that takes 80% of the time. We took that 80% out so you can stay in the part you actually like.
Bounds
Where you should still write your own backend
We would rather you stay focused than overstep our scope.
- If submissions need to enrich a row in your own database within 50ms, write your own endpoint and use Formspring for the public-facing forms only.
- If you need browser-side encryption of the payload before it leaves the page, our hosted ingest is not the right layer.
- If your form is the product (e.g., a Typeform competitor), use Formspring for the metadata-driven scaffolding, not the runtime.
Tools you can use without an account
Bookmark these.
Stop writing the form. Ship the product.
The free tier covers indie projects. Hit a webhook when you outgrow the inbox - same URL, same form.
·· no card · 50 submissions / mo · no countdown