Modern electrical diagram design tool for Belgian AREI standards
Try the application online: https://eendraadschema.xeweb.be
Original Application: Created by Ivan Goethals (2019-2025)
React 19 Refactor & UI Improvements: Tim Van Onckelen (2026)
This version is a modern refactor of the original eendraadschema application, migrated to React 19 with an improved user interface while maintaining all the original logic and functionality created by Ivan Goethals.
- π Original repository
- π React version repository
Design and draw one-wire electrical diagrams as enforced by the Belgian AREI legislation. The application runs entirely in the browser and is built with TypeScript.
- Modern React 19 component architecture
- Ribbon-based interface with compact button layouts
- Responsive design with flexbox layouts
- Improved visual consistency
- Full React implementation
- Maintained all original electrical schema functionality
- Improved rendering performance
- Interactive SVG diagrams
- Searchable SVG symbol library
- Filter symbols by category
- Drag-and-drop placement of electrical symbols
- Element selection and positioning tools
- Multi-page management
- Zoom controls (25%, 50%, 75%, 100%, 150%, 200%)
- Auto-save every 5 seconds
- IndexedDB-based local storage
- Recovery dialog for unsaved changes
- Visual save status indicator
- Import/export .eds files
- PDF export functionality
- Integrated documentation viewer
- PDF manuals included
- Node.js (v18 or higher recommended)
- npm or yarn
# Clone the repository
git clone https://github.com/TimVanOnckelen/eendraadschema.git
cd eendraadschema
# Install dependencies
npm install
# Start development server
npm run devThe application will open at http://localhost:5173
npm run buildThis creates a dist folder with the built application.
- React 19 - Modern UI framework
- TypeScript - Type-safe development
- Vite - Fast build tool and dev server
- IndexedDB - Client-side storage
- jsPDF - PDF generation
- Modern CSS - Component-based styling
This application is in an active migration phase from vanilla TypeScript to React 19. Approximately 30% of the UI layer has been migrated to React components, with the remaining code consisting of core business logic and complex rendering systems.
π Detailed Migration Report: LEGACY_CODE_AUDIT.md
The audit document provides:
- Complete inventory of React vs legacy code
- Detailed analysis of hybrid components
- Migration priorities and recommendations
- Technical debt assessment
Contributions are welcome and appreciated!
- π΄ Fork the repository
- π¨ Create a feature branch (
git checkout -b feature/amazing-feature) - β
Commit your changes (
git commit -m 'Add amazing feature') - π€ Push to the branch (
git push origin feature/amazing-feature) - π Open a Pull Request
- Please open an issue first for major changes to discuss the approach
- Check LEGACY_CODE_AUDIT.md to understand the current migration status
- Follow the existing code style and conventions
- Write clear commit messages
Contributions to the original vanilla TypeScript version: igoethal/eendraadschema
This project is licensed under the GNU General Public License v3.0 - see LICENSE.md for details.
Copyright:
- Original Application: Β© 2019-2025 Ivan Goethals
- React Refactor & UI Improvements: Β© 2025-2026 Tim Van Onckelen
All core functionality for drawing electrical diagrams according to Belgian AREI legislation was developed by Ivan Goethals. This React version is a modernization of the architecture and user interface, but the electrical schema logic remains completely the work of Ivan.
- π Report bugs
- π‘ Request features
- π§ Questions? Open an issue or discussion
This is a hobby project maintained in free time. Commercial use is not planned to maintain the freedom to work on it as desired.
Made with β€οΈ in Belgium
- Technical debt assessment
