Application web · Open source2026
Modrise
Éditeur Merise dans le navigateur
- Année
- 2026
- Statut
- En ligne
- Nature
- Application web · Open source
- Rôle
- Conception, Développement, Architecture, Tests

Contexte
Modéliser une base de données en Merise se fait encore largement sur des outils vieillissants, installés en local, au format propriétaire. Modrise est une implémentation moderne et indépendante du problème : concevoir un MCD, obtenir son MLD, produire le SQL — dans un navigateur, sans backend.
Contraintes
- 01
Aucune donnée ne doit quitter le poste de l’utilisateur : ni compte, ni base distante, ni téléversement.
- 02
La transformation MCD → MLD → SQL doit être déterministe et vérifiable, pas approximative.
- 03
Le format de fichier doit rester ouvert, versionné et migrable dans le temps.
Intervention
01
Un moteur métier séparé de l’interface
La transformation Merise et la génération SQL sont écrites en TypeScript pur, sans aucune dépendance à React. Le moteur est testable seul et réutilisable ailleurs — CLI, API ou application desktop.
02
Local-first assumé
Les projets sont persistés dans IndexedDB via Dexie, avec sauvegarde automatique et reprise du dernier projet. L’import/export `.merise.json` est validé par un schéma Zod versionné, avec migrations.
03
Génération SQL multi-dialecte
PostgreSQL, MySQL/MariaDB et SQLite. Clés primaires simples et composées, identifiants alternatifs, contraintes uniques, clés étrangères, tables associatives pour les relations n-aires, ordre de création déterministe pour gérer les cycles.
04
Édition graphique réelle
Canevas React Flow, participations tracées à la souris, cardinalités Merise, associations réflexives et n-aires, historique annuler/rétablir par geste métier — pas par pixel ni par frappe.


Résultat
Un outil utilisable en cours comme en cadrage de projet, qui produit un schéma exécutable en quelques minutes. Le code est public, typé strictement, couvert par des tests unitaires et des tests de bout en bout Playwright.
- 3
- dialectes SQL générés
- 0
- donnée envoyée à un serveur
- AGPL
- code ouvert et auditable
Technologies
- React 19
- TypeScript
- Vite
- React Flow
- Dexie / IndexedDB
- Zod
- Tailwind CSS
- Vitest
- Playwright