FlexiForm is a clean and easy-to-use form builder built with modern web tools. It lets users create, customize, and manage forms through a simple drag-and-drop interface. Whether you're collecting feedback, registrations, or survey data, FlexiForm helps you get started quickly with a responsive and polished experience.
-
Drag & Drop Builder – Easily arrange form fields just the way you want
-
Live Preview – See changes in real time as you build your form
-
Field Types Supported:
- Text, Title, Paragraph, Number
- Dropdowns with options
- Checkboxes with custom labels
- Date pickers, spacers, and separators
-
Form Management:
- Create, edit, publish, and delete forms
- View and export responses
-
Customization Options:
- Validation rules per field
- Custom error messages
- Conditional visibility
-
Sharing:
- Share forms via unique links
- Control who can access
-
User Experience:
- Dark mode available
- Fully responsive on all devices
-
Authentication & Security:
- Sign-in support with Clerk
- Secure submission handling
- Frontend: Next.js 14 with App Router
- Styling: Tailwind CSS + Shadcn UI
- Database: Prisma with PostgreSQL
- Authentication: Clerk
- Form Builder: DND Kit for drag-and-drop functionality
- State Management: React Context API
- Icons: Lucide React + React Icons
- UI Components: Custom components with Radix UI primitives
- Clone the repository:
git clone https://github.com/yourusername/flexiform.git
cd flexiform
- Install dependencies:
npm install
- Set up environment variables:
DATABASE_URL="your-database-url"
CLERK_SECRET_KEY="your-clerk-secret"
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY="your-clerk-publishable-key"
- Run database migrations:
npx prisma migrate dev
- Start the development server:
npm run dev
├── app/ # Next.js app router pages
├── components/ # React components
│ ├── fields/ # Form field components
│ ├── ui/ # UI components
│ └── hooks/ # Custom React hooks
├── prisma/ # Database schema and migrations
├── public/ # Static assets
└── schemas/ # Validation schemas
Abu Hasan Rumi
- Portfolio: itsrumi.com
- GitHub: @abuhasanrumi
- LinkedIn: Abu Hasan Rumi
This project is licensed under the MIT License - see the LICENSE file for details.