Conception complete (Phase 0) pour formation-hub Acadenice : - 19 docs Merise Agile + UML + GitOps + plans (tests/deploy/ops/api) cf docs/00-readme.md pour l'index complet - Stack Docker compose (Docmost + Baserow + Postgres + Redis + MinIO local FS) compose.yml + compose.staging.yml + compose.prod.yml - CI/CD GitHub Actions skeleton (ci, deploy-staging, deploy-prod) - Bridge service skeleton (Hono + TS + Biome + Vitest + zod + pino) - Templates GitHub : PR + 3 issue types + CODEOWNERS + dependabot.yml - Scripts ops : healthcheck, backup quotidien, smoke-test post-deploy - LICENSE AGPL-3.0 + SECURITY.md + CONTRIBUTING.md + CHANGELOG.md - Diagramme drawIO archi infra (XML importable dans diagrams.net) Decisions structurelles enregistrees : - Scope CFA + Agence avec entite PERSONNE pivot multi-roles (ADR-001) - Stack composite Docmost AGPL + Baserow MIT + bridge custom (ADR-001) - Path B : UX quasi-unified via Tiptap node-views custom (ADR-002) - Monorepo trunk-based development (ADR-003) - Postgres separe Docmost/Baserow (ADR-004) - Bridge stack Node 22 + Hono (ADR-005) - Repo neuf prefere a fork Docmost - Prod-like des le jour 1 (pas MVP)
4.1 KiB
4.1 KiB
Discovery — Recap
Synthese de la phase de recherche, projets evalues, blocages identifies, decision finale. Date : 2026-05-07
Contexte metier
- Centre de formation, ~20 employes (admin + formateurs)
- Acces clients ponctuel par lien partage
- Etudiants avec espaces personnels libres
- Cible : 90-100 utilisateurs total, ~30 simultanes peak
Besoin fonctionnel
- Wiki collaboratif (SOPs, supports formation, doc interne)
- Bases structurees liees pour le suivi des heures de formation :
- Formations (programmes complets)
- Blocs (blocs de competences)
- Modules (lecons individuelles)
- Formateurs (avec capacite annuelle)
- Calculs automatiques d'heures attribuees / restantes par formation, par bloc, par module, par formateur
- Bidirec backlinks dans le wiki
- Editeur dual-mode (WYSIWYG + raw markdown a la Alexandrie Hub)
- Self-host obligatoire, illimite users, AGPL/MIT acceptable
Projets OSS evalues
Elimines
| Projet | Raison |
|---|---|
| Notion (cloud) | Pas self-host, prix au seat |
| AFFiNE | Self-host limite a 10 seats, Team License $10/seat/mois = ~2200€/an pour 20 users |
| AppFlowy | Self-host limite a 1 user + 3 guests free |
| Outline (getoutline) | Pas de bidirec backlinks reel + license BSL (restrictions commerciales) |
| SiYuan | Excellent dual-mode + bidirec mais conçu single-user, refactor team trop lourd |
| TriliumNext | Single-user origine |
| Logseq | Outliner Roam-like, stack Clojure rare, DB version en beta |
| Anytype | License "Any Source Available" non-OSI, fork commercial = zone grise |
| HedgeDoc / BookStack | Pas de bidirec, pas de DBs |
| Alexandrie Hub | Dev solo, bus factor de 1, pas viable pour boite. Sert de reference UX dual-mode. |
Sources verifiees :
Retenus
| Projet | Role | Pourquoi |
|---|---|---|
| Docmost | Wiki collaboratif | AGPL, users illimites self-host, team workspaces + spaces + share links natifs, stack TS/NestJS/React/Tiptap mainstream, ultra-actif (release fin avril 2026) |
| Baserow | DBs structurees | MIT core, users illimites self-host, multi-vues (table/kanban/calendar/timeline/gallery), formules, rollups, relations, real-time collab |
Path retenu — Path B
Le user a confirme le 2026-05-07 : on ne reinvente pas la roue, on utilise Docmost + Baserow tels quels et on construit un bridge custom (Node TS) qui :
- Expose l'API Baserow comme nodes Tiptap inline dans Docmost
- Fournit des routes de rendering
/formateur/:idet similaires comme pages Docmost-style - Cache Redis pour eviter de spam Baserow API
L'utilisateur final ne doit pas voir l'UI Baserow. Cliquer sur un formateur depuis le wiki = arriver sur une page Docmost qui contient les proprietes (capacite, heures restantes) en haut + zone wiki rich content en bas.
Profil dev
- AdminSys + DevOps solo (Docker + Traefik + scripts ops)
- Apprend React + Tiptap au besoin (courbe d'apprentissage acceptee)
- Possibilite freelance ponctuel pour Tiptap node-views (~2 jours pair-programming)
Manques connus de Docmost
| Manque | Source | Cout dev estime |
|---|---|---|
| Bidirec backlinks | issue #1122 | 2-4 semaines |
| Dual-mode editor (WYSIWYG ↔ raw MD) | aucune doc | 2-3 semaines |
| Guest sharing fin (Notion-style) | discussion #1586 | 1-2 semaines |
| DBs Notion-style integrees | non roadmap | delegue a Baserow + bridge |
Ordre d'attaque
- Phase 1 — Stack vanilla locale, schema Baserow, MCD/MCT documentes
- Phase 1 bis — Deploiement staging avec Traefik, CI/CD GitHub Actions
- Phase 2 — Bridge Node TS, premier Tiptap node-view custom, route
/formateur/:id - Phase 3 — Bidirec backlinks Docmost, dual-mode editor (selon douleur reelle)