Skip to content
Contact Forms live preview
All projects

Contact Forms

Give every project a contact form without paying a third-party service per site.

Embedding third-party form tools across 100+ projects meant external tracking and monthly fees multiplying with every new project.

Tech Domain · Book Dev|Published|Evidence: Live|Next.js, TypeScript

A public deployment is available to try.

Case Study

Before

Each portfolio project needed a contact form, but embedding third-party form services added external dependencies, tracking, and monthly fees across 100+ projects.

After

Eliminated third-party form dependencies across the entire portfolio. The self-hosted solution handles unlimited submissions with zero monthly cost and full data ownership.

How it's solved

Built a self-hosted contact form system with embeddable snippets, spam protection via honeypot fields, submission management dashboard, and email notifications. Forms are customizable with fields, styling, and redirect URLs.

Trade-offs

Spam protection is honeypot-only — no CAPTCHA fallback for more sophisticated bot traffic.

Related Articles

Further reading on related topics from the blog

Related Projects

More in Tech Domain · Book Dev

Contact Forms - Chaowalit Greepoke Portfolio