Module Builder is a static web system for creating and managing dynamic form modules. It allows non-technical users to create custom forms simply by creating JSON files and Markdown templates, without needing to write code.
- ✅ Dynamic Forms: Automatically generates forms from JSON files
- ✅ Customizable Templates: Use Markdown templates with placeholders to generate documents
- ✅ Easy to Use: Intuitive interface for non-technical users
- ✅ Multiple Field Types: Text, email, numbers, dates, multiple choice, and more
- ✅ Automatic Validation: Client-side validation for required fields and email format
- ✅ Document Preview: Real-time preview of generated documents
- ✅ Download Documents: Download completed documents as Markdown files
- ✅ Responsive Design: Works perfectly on desktop and mobile
- ✅ Backend Ready: Extensible architecture for future API integration
- .NET 8 SDK
- A modern browser
- (Optional) A web server for deployment (e.g., GitHub Pages)
-
Clone the repository
git clone https://github.com/YOUR_USERNAME/module-builder.git cd module-builder -
Restore dependencies
dotnet restore
-
Build the project
dotnet build
-
Run the application
dotnet run
-
Open your browser to the URL shown in the terminal (usually
https://localhost:5001)
- User Guide - Complete guide for creating and modifying modules (for non-technical users)
- Technical Setup - Technical information for developers
- Next Steps - Future steps and improvements
- Backend API - API documentation for backend integration
- Create a Module: Add a JSON file in
/jsonand a Markdown template in/modules - Configure Questions: Define form fields in the JSON file
- Create the Template: Use
{{fieldName}}as placeholders in the Markdown template - Users Fill Forms: The form is automatically generated from the JSON
- Document Generated: Answers replace placeholders in the template
module-builder/
├── modules/ # Markdown templates with {{placeholders}}
├── json/ # JSON module configurations
├── wwwroot/ # Static files (HTML, CSS, JS)
├── backend/ # Backend API documentation
├── docs/ # User guides
└── Components/ # Blazor components
- Blazor WebAssembly (.NET 8) - Frontend framework
- Markdig - Markdown processing
- Custom CSS - Modern and responsive design
The project includes an example module (exampleModule) that demonstrates all features. Check:
/json/exampleModule.json- Form configuration/modules/exampleModule.md- Document template
Contributions are welcome! For more information, see the User Guide to create new modules.
This project is released under the MIT License. See the LICENSE file for details.
For questions or issues:
- Check the User Guide for creating modules
- See Technical Setup for technical issues
- Open an issue on GitHub for bugs or feature requests
Built with ❤️ using Blazor WebAssembly