इसे छोड़कर कंटेंट पर जाएं

Forms

पहले से बने contact, quote, booking, और registration forms। AI इन्हें एक single component से डालता है — कोई submit handler लिखने की ज़रूरत नहीं — और हर submission आपके app के submissions inbox में पहुँचती है।

Proyecta पर Forms एक capability है, न कि कुछ ऐसा जिसे AI हाथ से code करे। जब आपके app को visitors से संपर्क करने का कोई तरीका चाहिए — एक contact form, quote request, appointment booking, या event sign-up — Proyecta एक ready-made form definition provision करता है और उसे एक template-owned block के ज़रिए render करता है। Validation, success state, submission storage, और owner notification — सब कुछ बिना किसी अतिरिक्त काम के मिलता है।

हर form पाँच built-in presets में से एक से शुरू होती है। आप जो form चाहते हैं उसे describe करें और Proyecta सही preset चुन लेता है (और उसे ज़रूरत के हिसाब से adapt करता है) — आपको fields खुद से नहीं बनाने पड़ते।

Preset form api id किसके लिए है किसके साथ pair होता है
Contact contactForm सामान्य “get in touch”: name, email, optional phone, message Business info
Quote quoteForm Cotización request: contact data + कौन सी service + job details Services
Booking bookingForm Appointment / cita: service, preferred date & time, contact data Services
Registration registrationForm Event या course sign-up (inscripción / RSVP): attendee data + एक note Events
Order orderForm Order intake (pedido): customer को क्या चाहिए, contact data, notes Menu, catalog

एक app में कई forms हो सकते हैं (जैसे एक contact form और एक booking form), और AI उनमें से किसी में भी fields add, rename, या reshape कर सकता है।

AI इसे कैसे wire करता है

Section titled “AI इसे कैसे wire करता है”

AI कभी खुद से form या submit handler नहीं बनाता। वह template-owned <FormBlock/> डालता है और उसे form के id या api id से point करता है:

import { FormBlock } from '@/components/blocks/FormBlock';
// Anywhere on a public page — a contact section, a "request a quote" panel, etc.
<FormBlock form="contactForm" />;

<FormBlock/> सब कुछ खुद करता है:

  • Fields को type के हिसाब से render करता है — text / email / phone को inputs के रूप में, long text को textarea के रूप में, choices को dropdown के रूप में, opt-ins को checkbox के रूप में, dates और times को native pickers के रूप में, और file fields को “attach file” control के रूप में।
  • Browser में validate करता है — कुछ भी भेजने से पहले required fields की जाँच होती है।
  • Server पर validate करता है — अगर server किसी value को reject करता है, तो उस field के ठीक बगल में specific error inline दिखती है (कोई submission गुम नहीं होती, कोई silent failure नहीं होती)।
  • Success state दिखाता है — submit करने पर form की जगह एक friendly confirmation आती है (form का अपना confirmation message), जिसमें दूसरा response भेजने का option होता है।
  • Safe तरीके से fail होता है — अगर form exist नहीं करती या deactivate हो गई है, तो block कुछ भी render नहीं करता, इसलिए यह किसी public page को कभी break नहीं कर सकता।

चूँकि block template-owned है, इसलिए AI का काम बस उसे place करना और आसपास का section style करना है — उसके पीछे का plumbing fixed और सही है।

Forms एक uploaded file (receipt, reference photo, या brief) accept कर सकती हैं। File fields एक “attach file” button render करते हैं, file को storage पर upload करते हैं, और उसका public URL submission में डाल देते हैं। Limits आपके लिए enforce होती हैं:

  • केवल Images और PDF, 5 MB तक (बड़ी images browser में पहले downscale हो जाती हैं)।
  • File upload होते समय submit button disabled रहता है, इसलिए कोई submission कभी अधूरी नहीं जाती।

Submissions कहाँ जाती हैं

Section titled “Submissions कहाँ जाती हैं”

हर submission store होती है और आपके app के submissions inbox में दिखती है — जो admin panel का हिस्सा है, template के <SubmissionsInbox/> द्वारा render होती है। वहाँ से आप (owner) ये कर सकते हैं:

  • New / Read / Archived tabs के अंतर्गत submissions browse करें, New पर unread badge के साथ।
  • कोई भी submission खोलें और submitted field values, जिस page से आई वह page, और date देखें।
  • किसी submission को read mark करें, उसे new में वापस ले जाएं, या archive करें।
  • Inbox को किसी single form तक सीमित करें, या सभी forms की submissions एक list में देखें।

Inbox केवल admin के लिए है — reader को admin account से sign in होना ज़रूरी है (server पर enforce होता है)।

हर submission पर email पाएं

Section titled “हर submission पर email पाएं”

कोई भी submit करे तो Forms आपको email से notify कर सकती हैं — owner notifications चालू करें और वह address set करें जिस पर notifications आनी चाहिए। App खोले बिना lead सीधे आपके inbox में आ जाता है। Email खुद Proyecta की email capability के ज़रिए भेजी जाती है, इसलिए कोई अतिरिक्त setup नहीं चाहिए।

सामान्य patterns (AI से wire करवाएं)

Section titled “सामान्य patterns (AI से wire करवाएं)”
  • "Add a contact form to the footer with name, email, and message, and email me at hello@mybiz.com whenever someone submits."
  • "Put a 'Request a quote' form on each service page that asks which service they need and the job details."
  • "Add a booking form so clients can request an appointment with a preferred date and time."
  • "Create an event registration form for the workshop page and let attendees attach a PDF."
  • "Show me the submissions inbox and only the ones I haven't read yet."
  • Content Management — forms आपके collections के साथ उसी content model में रहती हैं।
  • Admin Panel — जहाँ submissions review होती हैं।
  • Emails — owner-notification emails कैसे भेजी जाती हैं।