FormDrop is building a backend-as-a-service for contact forms. Website owners embed a snippet on their site, and form submissions are:
- Received via API - a POST endpoint accepts form data (name, email, message, custom fields).•Validated - check for required fields, email format, and spam detection (honeypot field, reCAPTCHA score).•Stored - all submissions saved to a database with timestamps and metadata.•Emailed - the website owner receives an email notification for each submission (with customizable email templates).•Dashboard - owners can view, search, and export all submissions from a web dashboard.•Spam filtering - block obvious bots and flag suspicious submissions.
Targeting 5,000 websites generating 200,000 form submissions per day total.
Design a form submission backend that receives contact form data, validates it, and sends email notifications. Build this architecture under realistic production constraints, then validate tradeoffs in the design lab simulation.
Request path: The solution keeps ingress, service logic, and stateful dependencies separated so each layer can scale independently.
Reference flow: Web Clients -> API Gateway -> Rate Limiter -> API Service -> Primary SQL DB