OpnForm is an open-source form builder built with Laravel and Nuxt.js that enables non-technical users to create unlimited forms with drag-and-drop fields, logic rules, and integrations. It solves the problem of fragmented, paid form tools by offering a free, self-hostable alternative with enterprise-grade features available via a dual-licensing model. The platform supports both cloud-hosted and self-hosted deployments via Docker, with a modular architecture separating core AGPLv3 functionality from proprietary enterprise extensions.
Built on a PHP/Laravel backend and Nuxt.js frontend, OpnForm integrates with Slack, Discord, and webhooks, and supports CSV exports, form analytics, and custom domains. Its dual-license model ensures sustainability: the core is AGPLv3 open-source, while advanced features like SSO, SAML, and dedicated instances are available under a commercial Enterprise license.
What You Get
- No-code form builder - Drag-and-drop interface with 10+ input types including text, date, URL, file uploads, and hidden fields — no coding required.
- Unlimited forms and submissions - Create as many forms as needed with no limits on responses or fields, even on the free plan.
- Embed anywhere - Generate an embed code to place forms directly on websites, blogs, or landing pages without redirects.
- Form logic & customization - Show/hide fields based on user input, set closing dates, apply password protection, and pre-fill fields via URL parameters.
- File uploads up to 5MB (free), 50MB (Pro) - Securely accept and store files with automatic handling and preview support.
- Email and webhook integrations - Receive submissions via email notifications, Slack, Discord, or custom webhooks with JSON payloads.
- Form analytics dashboard - Track views, submissions, and conversion rates with visual charts and exportable CSV data.
- Custom themes and thank-you pages - Modify colors, fonts, logos, and redirect users to custom thank-you pages after submission.
- AI-powered form generation - Describe your form in plain text and let OpnForm AI generate a fully functional form in seconds.
- Custom code injection - Add custom CSS or JavaScript to forms for advanced styling or tracking integrations.
- Editable submissions - Pro feature allowing admins to edit or annotate form responses after submission.
- SAML SSO and 2FA (Enterprise) - Enterprise-grade authentication with SAML single sign-on and two-factor authentication for team security.
Common Use Cases
- Running a survey-based newsletter - A journalist uses OpnForm to collect reader feedback via embedded forms on their blog, then exports submissions to CSV for analysis and story ideation.
- Building lead capture forms for a SaaS startup - A marketing team creates multiple landing page forms with logic rules to qualify leads, embeds them on their site, and receives Slack notifications for high-intent submissions.
- Collecting event registrations with file uploads - A conference organizer uses OpnForm to gather attendee details and resume uploads (up to 50MB with Pro), with confirmation emails and analytics to track attendance rates.
- Self-hosting a compliant form solution for healthcare - A clinic deploys OpnForm on-premises using Docker to collect patient intake forms under HIPAA-like compliance, avoiding third-party form vendors.
Under The Hood
Architecture
- Clear MVC separation with controllers, services, and Eloquent models ensuring modular responsibility
- Dependency injection via Laravel’s service container promotes loose coupling and testability
- Event-driven background processing with queued workers and schedulers for analytics and integrations
- Multi-container Docker orchestration isolates API, UI, database, and caching services into bounded contexts
- Decoupled frontend and backend via REST API with environment-aware configuration and CORS policies
- Environment variables and Docker volumes ensure consistent, isolated configurations across environments
Tech Stack
- Laravel 9+ backend with PHP 8.x, Blade templates, and Artisan CLI for robust server-side operations
- Nuxt.js 3 frontend (Vue 3) with Vite, SSR support, and seamless API integration
- PostgreSQL for persistent data storage and Redis for caching and session management, both containerized
- Nginx as a dynamic reverse proxy routing traffic between frontend and backend services
- Comprehensive Docker environments with named volumes and health checks for reliability
- Amplify CI/CD pipeline automates frontend builds and deploys static assets to AWS
Code Quality
- Extensive test coverage across unit, integration, and end-to-end scenarios using Laravel’s testing utilities and Pest
- Custom exception classes and structured validation responses ensure predictable error handling
- Domain logic encapsulated in dedicated service classes with clear interfaces and dependency injection
- Consistent naming and modular structure following Laravel conventions, with tests organized by feature
- Built-in linting, file security checks, and middleware-like validations enforce safety at the service layer
- Test helpers and factory patterns reduce boilerplate while preserving clarity in workflow testing
What Makes It Unique
- AI-powered form generation from natural language prompts eliminates manual field configuration
- Integrated email notification system with templating and queuing, no external dependencies required
- Language-aware form rendering with dynamic localization handled at the data layer
- Unified plugin-based integration framework for seamless third-party webhook and API connections
- First-submission onboarding with contextual guidance and pre-configured integrations
- Real-time form analytics embedded directly in the UI, removing need for separate dashboards