Reform
Publish a clean branded lead form with routing, notifications, and exports
The core loop is small enough for a capable coding agent to produce a useful local version in one sitting. For Reform, publish a clean branded lead form with routing, notifications, and exports. The hard boundary is polished ux, spam controls, integrations, and reliable hosted delivery, plus integrations, deliverability, and workflow depth.
Build verification: not recorded. How we judge buildability
What you give up
- polished UX, spam controls, integrations, and reliable hosted delivery
- advanced branching
- payment and CRM integrations
- large template libraries
- enterprise compliance
Why people still pay
People still pay for Reform because a basic form is trivial; people pay when the form feeds a dependable business workflow and never loses a response. The recurring cost buys spam control, email delivery, storage, exports, accessibility, conditional logic, and integrations, not just the visible interface.
Your build guide
The stack, security requirements, and agent rules for a focused replacement.
Before you start
- Runtime and tools: TypeScript, React, Node and PostgreSQL with versioned form schemas and server-side validation.
- Before starting: A public HTTPS origin, an administrator account, sample valid/invalid responses and optional verified notification delivery.
Use these project rules and optional skill references alongside the prompt. Review each skill before adding it to your agent; the AGENTS.md export includes the same guidance.
Project rule — domain: Store FormVersion, Question, Response, RoutingDecision and Notification; accepted response identity is independent of notification delivery and consent remains a separate field.
Project rule — scope and recovery: Begin with text/choice fields and no payments. Avoid collecting unnecessary personal data, show retention expectations and keep spam controls from silently discarding valid submissions.
Project rule — acceptance: Submit twice after a timeout and disable the notification provider; save one response, show delivery failure to the owner and still confirm successful intake to the visitor.
Project rule — delivery: document real setup commands and permissions; do not claim a build, accuracy level, performance result or security certification that has not been demonstrated.
Recommended skill: supabase-postgres-best-practices — review this PostgreSQL domain schema, uniqueness constraints, transaction boundaries and access-scoped queries; Supabase hosting is not required. Follow the maintainer's installation instructions and match its requirements to the chosen runtime.
Recommended skill: web-design-guidelines — review keyboard access, focus, validation, error recovery and the readable work/review interface or HTML report. Follow the maintainer's installation instructions and match its requirements to the chosen runtime.
Implementation plan
Phase 1
Pin the working slice and create its example input: Publish a clean lead form with a short sequence of questions, validate responses and route accepted leads into a private review inbox. Confirm setup: A public HTTPS origin, an administrator account, sample valid/invalid responses and optional verified notification delivery.
Phase 2
Implement persistence and write-time invariants before decorating the UI: Store FormVersion, Question, Response, RoutingDecision and Notification; accepted response identity is independent of notification delivery and consent remains a separate field.
Phase 3
Connect the working view to real saved state. Pin submissions to a published schema version. Re-evaluate branching and required fields on the server, rate-limit public intake, and keep notifications in an outbox separate from accepted responses.
Phase 4
Expose the app-specific limits and recovery path in context: Begin with text/choice fields and no payments. Avoid collecting unnecessary personal data, show retention expectations and keep spam controls from silently discarding valid submissions.
Phase 5
Walk through this concrete acceptance case and preserve its exported evidence: Submit twice after a timeout and disable the notification provider; save one response, show delivery failure to the owner and still confirm successful intake to the visitor. Finish the README and backup/restore instructions; report unfinished capabilities explicitly.
Build the following focused alternative to Reform. Implement the focused workflow below first; the verdict is not evidence of a completed or production-certified build. WORKING SLICE Publish a clean lead form with a short sequence of questions, validate responses and route accepted leads into a private review inbox. SETUP AND ARCHITECTURE Use TypeScript, React, Node and PostgreSQL with versioned form schemas and server-side validation. Prerequisites: A public HTTPS origin, an administrator account, sample valid/invalid responses and optional verified notification delivery. Before integrating anything, record actual versions and permissions, plus model files or provider limits only where used, in the README; make unavailable dependencies visible rather than simulating success. DOMAIN MODEL AND INVARIANTS Store FormVersion, Question, Response, RoutingDecision and Notification; accepted response identity is independent of notification delivery and consent remains a separate field. IMPLEMENTATION CONTRACT Pin submissions to a published schema version. Re-evaluate branching and required fields on the server, rate-limit public intake, and keep notifications in an outbox separate from accepted responses. Provide an input/setup view, the main work view, and a review/export view appropriate to this workflow. Preserve the last saved state if a job or save fails. Include empty, loading, permission-denied, partial and retryable-error states. Log identifiers and error categories without secret values or unnecessary private content. APP-SPECIFIC BOUNDARY AND RECOVERY Begin with text/choice fields and no payments. Avoid collecting unnecessary personal data, show retention expectations and keep spam controls from silently discarding valid submissions. ACCEPTANCE SCENARIO Submit twice after a timeout and disable the notification provider; save one response, show delivery failure to the owner and still confirm successful intake to the visitor. Also reopen the app after an interrupted operation, confirm the saved record/export remains inspectable, and document the recovery action. These are implementation acceptance requirements, not a claim that this guide has been tested. DELIVERY Deliver a runnable repository with migrations or project-format versioning, a non-sensitive example, environment/permission setup, the exact manual acceptance steps, and a backup/export-and-restore walkthrough. Implement the working slice before optional integrations; list any deferred paid-product capabilities honestly. Do not add capabilities outside the working slice just to resemble the original product. PROJECT RULES FOR AGENTS.md Keep the domain invariants above executable at the write boundary. Propose scope changes before adding providers or permissions. Never fabricate source evidence, publish results, identity matches or successful delivery. Preserve user originals and require an explicit confirmation for destructive changes or external publication.
$ open in your agent (prompt prefilled, you press enter), copy the prompt or copy or download AGENTS.md · generated from this app's build plan
prompt copied. want to know what dies next week?
new verdicts + top votes, weekly. free. one-click out.
Alternatives to building your own
no votes, no pay-to-list · just what's real
Reform pricing
| plan | monthly | annual (per mo) | what you get |
|---|---|---|---|
| free | $0/workspace | $0/workspace | Unlimited draft forms; 0 live published forms and therefore 0 collectible responses. |
| basic | $15/workspace | $12.50/workspace | Unlimited live forms and responses; basic integrations and branding controls.The annual card states $150/year, but secondary text on the same live card also renders '$180 billed annually'; the annual-equivalent field uses the explicit $150 annual total. |
| pro | $35/workspace | $29.17/workspace | Unlimited live forms and responses; advanced integrations, routing and branding controls.The annual card states $350/year, but secondary text on the same live card also renders '$420 billed annually'; the annual-equivalent field uses the explicit $350 annual total. |
free tierUnlimited draft forms, but 0 live published forms and therefore 0 collectible responses.
billingMonthly + annual; the live annual cards contain internally contradictory annual-total text, noted tier by tier.
hidden costsThe 14-day Pro trial requires a card and automatically begins paid Pro billing unless canceled.
pricing sources checked 2026-08-12 · pricing source ↗
Questions about Reform
Can you build your own Reform with AI?
The verdict is yes for the scoped workflow. The core loop is small enough for a capable coding agent to produce a useful local version in one sitting. For Reform, publish a clean branded lead form with routing, notifications, and exports. The hard boundary is polished ux, spam controls, integrations, and reliable hosted delivery, plus integrations, deliverability, and workflow depth.
What does the Reform build prompt cover?
The prompt starts with this scope: Publish a clean lead form with a short sequence of questions, validate responses and route accepted leads into a private review inbox. Full-product capabilities excluded from the comparison include: polished UX, spam controls, integrations, and reliable hosted delivery; advanced branching; payment and CRM integrations. Follow the implementation plan and its prerequisites before expanding the build.
How do I use the prompt, AGENTS.md and agent skills?
Start with the Reform prerequisites and stack, then copy the prompt into your coding agent. Save the project rules as AGENTS.md in the project root. Linked skills are optional packages or source instructions for specific tasks; review their current contents and install only those matching the chosen stack. A skill does not supply API credentials or verify the finished app.
How long will this Reform project take?
The catalogue estimate is one sitting for the limited scope. Setup, integration approvals, debugging, deployment and ongoing maintenance can add time. This is an estimate, not a delivery guarantee.
What would I give up by replacing Reform?
polished UX, spam controls, integrations, and reliable hosted delivery; advanced branching; payment and CRM integrations; large template libraries; enterprise compliance. People still pay for Reform because a basic form is trivial; people pay when the form feeds a dependable business workflow and never loses a response. The recurring cost buys spam control, email delivery, storage, exports, accessibility, conditional logic, and integrations, not just the visible interface.
What price is this guide comparing against?
The recorded Pro plan is $35/mo (monthly), checked 2026-07-31. Check the linked pricing source before buying. Building your own also has hosting, API and maintenance costs; the recorded amount is not a guaranteed saving.
What can I use instead of building Reform?
HeyForm: Typeform's manners, minus the monthly rent. OpnForm: Tally with a server bill instead of a subscription. Check each option's license, hosting needs and feature limits.