A powerful and flexible form builder application built with React, Redux, and TypeScript. Create dynamic forms with drag-and-drop functionality, advanced components, and real-time preview.
-
Basic Form Elements
- Text Field
- Checkbox
- Radio
- Select
- Button
-
Advanced Components
- Date/Time Picker
- File Upload
- Signature Pad
- OTP Input
- Tags Input
-
Layout Components
- Container
- Table
- Tabs
- Accordion
- Drag-and-drop interface
- Real-time component preview
- Comprehensive property editor
- Component search functionality
- Responsive layout with horizontal/vertical orientation
- Component reordering within forms
- Display Tab: Configure visual aspects and layout
- Data Tab: Manage data binding and default values
- Validation Tab: Set up validation rules and messages
- Logic Tab: Define conditional behavior and calculations
- React 18
- TypeScript
- Redux Toolkit
- React DnD
- Tailwind CSS
- Radix UI
- Lucide React Icons
- Zod
- Node.js 16+
- npm or yarn
- Clone the repository:
git clone https://github.com/yourusername/hotform-builder.git- Install dependencies:
npm install- Start the development server:
npm run devsrc/
├── components/
│ ├── BasicComponents/
│ │ ├── TextField/
│ │ ├── Checkbox/
│ │ ├── Radio/
│ │ ├── Select/
│ │ └── Button/
│ ├── AdvancedComponents/
│ │ ├── DateTime/
│ │ ├── FileUpload/
│ │ ├── Signature/
│ │ ├── OTP/
│ │ └── Tags/
│ ├── LayoutComponents/
│ │ ├── Container/
│ │ ├── Table/
│ │ ├── Tabs/
│ │ └── Accordion/
│ └── HotFormBuilder/
├── context/
├── redux/
├── types/
└── utils/
- Label
- Required status
- Placeholder
- Custom CSS classes
- Validation rules
- Default values
- Custom validation
- Error messages
- Conditional logic
- Calculation formulas
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- React DnD for drag-and-drop functionality
- Tailwind CSS for styling
- Lucide React for icons
- Radix UI for accessible components