New: Cloudflare Turnstile CAPTCHA is now available. ->
Back to all posts

How to Add Forms to Your Replit App [11 Prompts]

By Forminit in Guides • Updated July 16, 2026 • Published March 14, 2026

Short answer: Give Replit Agent a prompt with your Form ID and a link to the Forminit skill guide. Replit builds the form UI, Forminit handles everything after submit: validation, storage, email notifications, file uploads, spam protection, and integrations. No database tables, no email service, no extra packages to configure.

The whole setup is three steps:

  1. Create a form at forminit.com, set it to Public mode, and copy your Form ID.
  2. Paste one of the prompts below into Replit Agent, with your Form ID and the skill guide URL for your stack.
  3. Submit a test entry and watch it appear in your Forminit dashboard.

Does Replit have built-in form handling?

Not as a form product. Replit is an AI app builder whose Agent scaffolds full-stack apps, and the platform now bundles real backend primitives: every Replit App comes with a managed PostgreSQL database by default, and email providers like SendGrid and Resend are one-click connectors that Agent activates when your prompt mentions email. Published apps even get a feedback widget with its own inbox, though that one is for app feedback, not general forms.

None of it adds up to form handling as a feature. There is no per-form endpoint, no submission inbox with statuses and team roles, no notification emails without a separately billed provider, and nothing in the docs about spam protection for public forms. Ask Agent for a contact form and it will happily build a schema, API routes, validation, and an email call. Then you own all of it: every notification change is a code change, and every spam wave is your problem. For a contact form. On a side project. That you built in 10 minutes with AI.

Replit’s behavior described here was verified against its official documentation in July 2026.

How Forminit solves this

Forminit (formerly Getform.io) is a headless form backend API. One service handles everything after submit: validation, storage, email notifications, file uploads, spam protection, webhooks, and integrations. No database schema, no email connector, no API routes. Your Replit app stays clean, just the frontend.

Why Forminit works well with Replit

Replit Agent picks the stack for you: since Agent 4 there is no manual stack selection, and it scaffolds anything from React and Next.js to Node.js or Python depending on what you’re building. Forminit has skill guides for each of those stacks, so whatever Agent picks, the AI has the right integration reference. The skill guide tells the Agent exactly which SDK to use, how to name fields, and how to handle submissions.

What you needDIY approach in ReplitForminit approach
Store form submissionsPrompt a schema + API routes into the built-in PostgresAlready done (dashboard included)
Email notificationsConnect SendGrid/Resend (billed separately), write the send logicBuilt-in, one toggle in dashboard
Change notification emailPrompt a code change and redeployChange in dashboard, no code
File uploadsSet up Object Storage, handle multipart parsingBuilt-in, up to 25MB
Spam protectionBuild it yourself (not in Replit’s docs)Built-in, plus Cloudflare Turnstile, reCAPTCHA, hCaptcha, honeypot
Team collaborationShare Replit project or build admin panelRole-based access (Owner, Admin, Member)
Autoresponder to submitterWrite custom email logicBuilt-in, configurable in dashboard
Server-side validationWrite validation middlewareAutomatic (typed field blocks)
UTM / attribution trackingBuild it yourselfAuto-captured by SDK
Services to manage2 (app backend + email provider)1 (Forminit)

When is Replit’s built-in database the better choice?

When submissions are application data. If what users submit feeds features your app reads back (orders, listings, user-generated content, anything with relations to other tables), it belongs in the app’s own Postgres, and letting Agent wire it there is the right call. Forminit wins the standalone-form cases: contact, lead capture, bookings, applications, and feedback, where what you actually want is an inbox, notifications, spam protection, and file handling without owning the plumbing.

How to set it up

Step 1: Create a form on Forminit

  1. Sign up at forminit.com
  2. Create a new form
  3. Go to Form Settings and set authentication mode to Public (for client-side apps) or Protected (if Replit scaffolds a backend)
  4. Copy your Form ID

Step 2: Prompt Replit Agent

Open Replit Agent and paste one of the prompts below. Pick the skill guide URL that matches the stack Replit generates for you:

StackSkill guide URL
React (Vite)https://forminit.com/skills/forminit-react/SKILL.md
Next.jshttps://forminit.com/skills/forminit-nextjs/SKILL.md
HTML / statichttps://forminit.com/skills/forminit-html/SKILL.md
Node.js backendhttps://forminit.com/skills/forminit-nodejs/SKILL.md
Python (Flask/Django)https://forminit.com/skills/forminit-python/SKILL.md

Copy-paste Replit form prompts

Contact form

Build me a contact form with name, email, and message fields. Connect it with Forminit for form submissions.

formId: <PASTE-YOUR-FORM-ID-HERE>

Use this integration skill guide: https://forminit.com/skills/forminit-react/SKILL.md

Waitlist / coming soon page

Build a coming soon landing page with a waitlist signup form. Collect email, full name, and a “What would you use this for?” textarea. Show a “You’re on the list!” success state. Connect form submissions with Forminit.

formId: <PASTE-YOUR-FORM-ID-HERE>

Use this integration skill guide: https://forminit.com/skills/forminit-react/SKILL.md

SaaS demo request form

Build a demo request form with first name, last name, work email, company name, phone, a company size select (1-10, 11-50, 51-200, 201-1000, 1000+), and a “What problem are you trying to solve?” textarea. Connect it with Forminit.

formId: <PASTE-YOUR-FORM-ID-HERE>

Use this integration skill guide: https://forminit.com/skills/forminit-react/SKILL.md

Freelancer project inquiry form

Build a project inquiry form for a freelancer portfolio site. Collect full name, email, a project type select (Website, Mobile App, Branding, UI/UX Design, Consulting, Other), a budget range radio ($1K-$5K, $5K-$15K, $15K-$50K, $50K+), a timeline select (ASAP, 1-2 months, 3-6 months, Flexible), and a project details textarea. Connect it with Forminit.

formId: <PASTE-YOUR-FORM-ID-HERE>

Use this integration skill guide: https://forminit.com/skills/forminit-react/SKILL.md

Job application form with file upload

Build a job application form with first name, last name, email, phone, a position select (Frontend Developer, Backend Developer, Designer, Product Manager, Marketing), a resume file upload (.pdf, .doc, .docx only), a portfolio URL field, and a “Why do you want to join us?” textarea. Connect it with Forminit.

formId: <PASTE-YOUR-FORM-ID-HERE>

Use this integration skill guide: https://forminit.com/skills/forminit-react/SKILL.md

Tattoo studio booking form

Build a tattoo appointment request form with full name, email, phone, a placement select (Arm, Leg, Back, Chest, Ribs, Neck, Hand, Other), a size radio (Small 2-4 inch, Medium 4-8 inch, Large 8+ inch, Full sleeve), a style select (Traditional, Japanese, Realism, Blackwork, Watercolor, Geometric, Minimalist, Lettering), a description textarea for the tattoo idea, and a reference image file upload (images only, multiple files). Connect it with Forminit.

formId: <PASTE-YOUR-FORM-ID-HERE>

Use this integration skill guide: https://forminit.com/skills/forminit-react/SKILL.md

Yoga / wellness consultation form

Build a wellness consultation booking form with full name, email, phone, a service type select (Yoga Private Session, Group Class, Meditation Workshop, Nutrition Consultation, Wellness Retreat), an experience level radio (Beginner, Intermediate, Advanced), a preferred schedule checkbox group (Weekday Mornings, Weekday Evenings, Saturday, Sunday), a goals textarea, and a health conditions or injuries textarea. Connect it with Forminit.

formId: <PASTE-YOUR-FORM-ID-HERE>

Use this integration skill guide: https://forminit.com/skills/forminit-react/SKILL.md

Restaurant reservation form

Build a restaurant reservation form with full name, email, phone, a reservation date picker, a time select (12:00, 12:30, 13:00, …, 21:00, 21:30), a party size select (1-2, 3-4, 5-6, 7-8, 9+), a seating preference radio (Indoor, Outdoor, Bar, Private Dining), an occasion select (None, Birthday, Anniversary, Business, Date Night), and a dietary restrictions or special requests textarea. Connect it with Forminit.

formId: <PASTE-YOUR-FORM-ID-HERE>

Use this integration skill guide: https://forminit.com/skills/forminit-react/SKILL.md

Photography session inquiry form

Build a photography inquiry form with full name, email, phone, a session type select (Portrait, Wedding, Family, Newborn, Product, Real Estate, Event), a preferred date picker, a budget range radio ($200-$500, $500-$1000, $1000-$2000, $2000+), a location textarea, and a mood board / reference images file upload (images only, multiple files). Connect it with Forminit.

formId: <PASTE-YOUR-FORM-ID-HERE>

Use this integration skill guide: https://forminit.com/skills/forminit-react/SKILL.md

Multi-step sales inquiry form

Build a multi-step sales inquiry form. Step 1: sender email, company name, phone number. Step 2: budget range (radio: $1K-$5K, $5K-$25K, $25K-$100K, $100K+), project timeline (select: This month, 1-3 months, 3-6 months, Not sure yet), and a project description textarea. Show a progress indicator between steps. Connect it with Forminit.

formId: <PASTE-YOUR-FORM-ID-HERE>

Use this integration skill guide: https://forminit.com/skills/forminit-react/SKILL.md

Personal trainer / fitness consultation form

Build a fitness consultation form with full name, email, phone, a fitness goal checkbox group (Weight Loss, Muscle Gain, Flexibility, Endurance, Injury Recovery, General Fitness), an activity level radio (Sedentary, 1-2 days/week, 3-4 days/week, 5+ days/week), a preferred training select (In-person, Online, Hybrid), and a medical conditions or limitations textarea. Connect it with Forminit.

formId: <PASTE-YOUR-FORM-ID-HERE>

Use this integration skill guide: https://forminit.com/skills/forminit-react/SKILL.md

Using Replit with a backend (Next.js or Node.js)

If Replit Agent scaffolds a Next.js or Node.js app with a server, you can use the protected mode with an API key for higher rate limits (5 req/sec instead of 1 per 30 sec). Just swap the skill guide URL in your prompt:

Same prompt as above, but use this integration skill guide instead: https://forminit.com/skills/forminit-nextjs/SKILL.md

For Next.js, Forminit provides a built-in createForminitProxy that creates a server-side API route; the API key stays on the server, never exposed to the browser. Add your API key to Replit’s Secrets tab as FORMINIT_API_KEY.

What happens after a form is submitted?

Once a form is submitted, Forminit automatically:

  1. Validates all fields server-side (email format, phone format, file types)
  2. Stores the submission in your dashboard with an inbox-style UI
  3. Sends email notifications to you (configurable)
  4. Captures attribution data including UTM parameters, ad click IDs (gclid, fbclid, msclkid), referrer URL, and geolocation
  5. Forwards data to other services via webhooks, Google Sheets, Zapier, Slack, or Discord

You can also set up autoresponders to automatically reply to the person who submitted the form.

Frequently asked questions

Why not just use Replit’s built-in database for form submissions?

You can. Every Replit App now includes managed Postgres by default. But you’re still building a form backend from scratch: schema, API routes, validation logic, email integration, spam protection, and an admin view. That’s a lot of ownership for a contact form. Forminit handles all of it as a service so you can focus on your actual app.

Does Forminit work with any stack Replit Agent generates?

Yes. Replit Agent picks the stack for you, and Forminit has skill guides for React, Next.js, HTML, Node.js, and Python. Whatever Agent scaffolds, there’s a matching guide. Check the skill guide table above and use the right URL in your prompt.

Can I use Forminit with Replit’s free plan?

Yes. Forminit’s client-side SDK works with any Replit plan. For public-mode forms you don’t even need environment variables, just a Form ID. Forminit’s Free plan includes 100 submissions per month.

Can I customize the prompt to match my use case?

Absolutely. The prompt examples above are starting points. Describe your exact fields, layout, and behavior; Replit Agent will generate the UI, and the skill guide ensures the Forminit integration is wired correctly. You can ask for multi-step forms, conditional fields, custom validation messages, specific styling, or any pattern your stack supports.

What if Replit Agent generates the wrong field names?

Always include the skill guide URL in your prompt. Without it, the Agent may use generic names like name="email" instead of name="fi-sender-email", which means submissions arrive empty. If it still gets it wrong, paste the specific field naming section from the Form Blocks reference into the chat.

Does Forminit handle spam protection?

Yes. Spam protection is built in and works out of the box. You can additionally enable Cloudflare Turnstile, reCAPTCHA v3, hCaptcha (visible and invisible), or a honeypot field from your form settings in the dashboard.

Further reading