A modern, feature-rich form builder and management application built with React Remix. Create, share, and collect responses with a clean, intuitive interface.
Live Demo: https://form-builder-alpha-ten.vercel.app/ Video Demo: https://youtu.be/2URwDjsSQgk/
- Drag-and-Drop Interface: Easily create forms by dragging components from the palette
- Multiple Field Types: Support for text, textarea, select, checkbox, radio, date, email, phone, and number fields
- Field Customization: Configure field properties like labels, placeholders, required status, and help text
- Form Preview: Real-time preview of your form as you build it
- Responsive Design Preview: Test how your form looks on desktop, tablet, and mobile devices
- Templates: Save and reuse form templates for common use cases
- Built-in Templates: Pre-built templates for common form types (Contact, Survey)
- Dark Mode: Toggle between light and dark themes for comfortable editing
- Shareable Links: Generate unique links to share your forms with respondents
- Copy to Clipboard: One-click copying of form links
- Form Status: Track the number of responses for each form
- Response Viewer: View all responses in a clean, tabular format
- Response Filtering: Select specific forms to view their responses
- Export to CSV: Download responses as CSV files for further analysis
- Response Statistics: See the number of responses for each form at a glance
- Modern UI: Clean, intuitive interface with smooth animations
- Offline Capability: Forms and responses are stored in localStorage
- Progress Saving: Form fillers can save their progress and return later
- Validation: Built-in validation for required fields and specific field types
- React Remix: Built with React Remix for server-rendered React applications
- State Management: Uses React's Context API and useReducer for state management
- Local Storage: Stores forms, templates, and responses in browser localStorage
- CSS: Styled with Tailwind CSS for a responsive, modern design
- Forms: Stored in
formBuilderFormslocalStorage key - Shared Forms: Stored in
sharedFormslocalStorage key - Templates: Stored in
customFormTemplateslocalStorage key - Responses: Stored in
formResponseslocalStorage key - In-Progress Forms: Stored in
formFillerProgresslocalStorage key
- FormBuilderMain: Main form builder interface
- FieldPalette: Draggable field components
- FormCanvas: Form editing area
- FormPreview: Real-time form preview
- FormFiller: Form response interface for end-users
- ResponseViewer: View and export form responses
- FieldEditor: Edit field properties
- Node.js (v14 or higher)
- npm or yarn
- Clone the repository:
git clone [https://github.com/Prabhsingh0401/Form-Builder.git](https://github.com/Prabhsingh0401/Form-Builder-Remix.git)
cd form-builder- Install dependencies:
npm install
# or
yarn install- Start the development server:
npm run dev
# or
yarn dev- Open http://localhost:5173 in your browser.
- Open the Form Builder
- Drag fields from the left palette onto the canvas
- Click on fields to edit their properties
- Use the preview panel to see how your form will look
- Click "Save" to save your form
- Click "Templates" to view available templates
- Select a template to load it into the editor
- Customize the template as needed
- To save your own template, click "Template it"
- Click the "Share" button
- The form link will be copied to your clipboard
- Share this link with your respondents
- Click "Responses" to open the response viewer
- Select a form to view its responses
- Use the "Export CSV" button to download responses
- Icons by Lucide
- Built with React Remix and React