Skip to content
Docs
Sign inGet Pro

Forms

Nitip has two forms: Contact (name, email, phone, the services someone is interested in, a message) and the job application on each role’s page. The prompts build them with their states — sending, “Thank you”, “Something went wrong” — and a hidden field that catches spam bots.

Until you connect a service, the forms run in demo mode: they wait a moment and show “Thank you”, but nothing is sent anywhere. Connect them before you publish.

The forms send their fields as JSON to the address in an environment variable:

Tool / framework Variable
Lovable, Bolt, Replit (Vite) VITE_FORM_ENDPOINT
v0 and other Next.js projects NEXT_PUBLIC_FORM_ENDPOINT
Astro PUBLIC_FORM_ENDPOINT
  1. Create a form at a service that accepts JSON posts — for example Formspree, Web3Forms, Basin — or a webhook in Zapier, Make or n8n.
  2. Copy the address it gives you (e.g. https://formspree.io/f/abcdwxyz).
  3. Set it as the variable above: in the tool’s settings for secrets or environment variables, or in a .env file.
  4. Send a test from the Contact page and check that it arrives.

Both forms can use the same address: every submission carries a form field (contact or application), and applications name the role in position.

  • Your tool’s database: Lovable and some others can save submissions in a database and email you. Ask: “Save Contact form submissions to the database and email me each one.”
  • Your own server: the endpoint can be any URL that accepts a JSON POST — your CRM, a serverless function.

The hidden fax field stays empty for people and gets filled by bots; the form service or your handler should drop submissions where it is filled. Most form services also filter spam themselves.