A user-friendly form builder focused on accessibility and inclusivity.
🚧 This project is still being actively developed and debugged. Major features like the form preview functionality are being refined.
- Drag-and-drop form building
- Multiple field types (text, textarea, select, radio, checkbox)
- Real-time preview
- Accessibility-first design
- Form validation
- Response collection
-
Accessible Form Creation
- WCAG 2.1 compliant forms (in progress)
- Screen reader friendly
- Keyboard navigation support
- Clear error messages
- Help text for form fields
-
Multilingual Support (in progress)
- Automatic translation of form fields
- Support for multiple languages including:
- English
- Spanish
- French
- Language preference settings for users
-
Form Field Types
- Text input
- Text area
- Select dropdown
- Radio buttons
- Checkboxes
-
Form Management
- Create and edit forms
- Preview forms
- Track form submissions
- Form status management (active/inactive)
-
Backend
- Ruby 3.2
- Rails 8.0
- PostgreSQL database
-
Frontend
- Bootstrap 5
- Stimulus.js
- Hotwire/Turbo
- Font Awesome icons
-
Prerequisites
ruby 3.2.0 postgresql
-
Installation
# Clone the repository git clone https://github.com/watson-clara/inclusive-form-builder.git cd inclusive-form-builder # Install dependencies bundle install # Setup database rails db:create db:migrate db:seed
-
Running the Application
# Start the Rails server rails server
-
Visit
http://localhost:3000
in your browser
The seed data includes these test accounts:
Role | Password | |
---|---|---|
Admin | admin@example.com | password |
Provider | provider@example.com | password |
Patient | patient@example.com | password |
- ARIA labels and descriptions
- Semantic HTML structure
- Keyboard navigation support
- Clear error messages
- Form field help text
Forms can be translated into multiple languages:
- English (default)
- Spanish
- French
This project is licensed under the MIT License - see the LICENSE.md file for details
- Bootstrap for the UI framework
- Font Awesome for icons
- The Rails community for inspiration and support
As this is an active work in progress, please feel free to open issues for bugs or feature requests.