I Built FabForm.io: A Refined Form Builder with One-Time Pricing
Most form builders punish you for growing.
Typeform looks great, but its pricing scales aggressively. Tally is simpler, but lacks control. Fillout is powerful, but geared toward enterprise use.
I wanted something elegant, fast, and predictable—so I built FabForm.io.
💡 Why I Built It
I run a SaaS and needed forms that:
- Look clean and convert well
- Don’t require monthly payments
- Integrate securely with Supabase
- Respect idiomatic workflows (no public tables, no hacks)
None of the existing tools fit. So I built FabForm from scratch.
🔧 What Makes FabForm Different
- One-time pricing: No subscriptions. Pay once, use forever.
- Refined UX: Every form is fast, elegant, and built for conversion.
- Built-in viral loop: Every form includes a subtle “Powered by FabForm” link.
- Supabase-native workflows: Secure paid status tracking using Edge Functions and the built-in users table.
🧪 How I Built the Paid Status Workflow
I used Supabase Edge Functions to securely mark users as paid via email. Here's the architecture:
- Trigger: Admin REST call with Service Role Key
-
Function: Edge Function validates email and updates
user_metadata - Storage: No public tables, no client-side exposure
- Tooling: ESLint, Prettier, and Jest for reproducibility
I’ll publish a full walkthrough soon. If you want the code or setup instructions, DM me or comment below.
🚀 What’s Next
I’m looking for early users—especially marketers, SaaS founders, and growth teams.
If you want a form builder that respects your UX standards and doesn’t punish you for scaling, try FabForm.io.
Feedback, feature requests, or brutal honesty all welcome.

Top comments (0)