adb-doc
Rôle
Site de documentation technique et fonctionnelle de la plateforme — c'est-à-dire ce site. Construit avec VuePress 2 (Markdown → site statique Vue 3).
Stack
| Élément | Valeur |
|---|---|
| VuePress | 2.0.0-rc.7 |
| Theme | @vuepress/theme-default 2.0.0-rc.11 |
| Bundler | @vuepress/bundler-vite |
| Vue | 3.4.0 |
| Search | @vuepress/plugin-search 2.0.0-rc.30 |
| Mermaid | vuepress-plugin-md-enhance + mermaid 11.4 |
| Hosting actuel | AWS EC2 + Nginx |
| Hosting cible | Cloudflare Pages (en cours de migration) |
Structure
adb-doc/
├── docs/
│ ├── index.md Table of contents
│ ├── architecture/ Vue d'ensemble (overview, communication, data, auth)
│ ├── services/ Fiches projet (une par projet du monorepo)
│ ├── functional-epics/ Epics fonctionnelles existantes
│ ├── technical-epics/ Epics techniques existantes
│ ├── productBoard/ Specs produit
│ ├── implicit/ Specs implicites (callbacks, etc.)
│ ├── data-dictionary.md Dictionnaire des collections
│ ├── assets/ Images, diagrammes
│ └── .vuepress/
│ └── config.js Configuration site (sidebar, plugins)
├── package.json Scripts + deps
├── bitbucket-pipelines.yml CI/CD historique vers EC2
└── readme.md
Sections
Architecture (nouveau)
Vue d'ensemble cross-cutting du monorepo :
- Overview — schéma global + inventaire.
- Communication — patterns inter-services, FQDN, gateway, BFF, événements.
- Data — MongoDB, S3, Neo4j, messaging.
- Auth — Keycloak, JWT, BFF.
Services (nouveau)
Une fiche détaillée par projet : services/.
Functional Epics (existant)
Cas d'usage métier, organisés par domaine : display, process, reporting, stateMachine, utility. Voir l'index sur la page d'accueil.
Technical Epics (existant)
Sujets techniques transverses : environnement, logging, tracing, OpenAPI, sécurité, messaging, tests.
Product Board / Implicit
Specs et notes orientées produit (rental process, ticketing, callbacks).
Configuration
docs/.vuepress/config.js — configuration VuePress :
- Theme : default avec navbar (Architecture, Services, Swagger Docs).
- Sidebar : structurée par sections (
/architecture/,/services/). - Plugins :
searchPlugin— recherche full-text.mdEnhancePlugin({ mermaid: true })— rendu des diagrammes Mermaid.
Build
npm install
npm run docs:dev # Dev server (localhost:8080)
npm run docs:build # Build statique → docs/.vuepress/dist/
npm run docs:clean-dev # Dev avec cache vidé
npm run docs:update-package # Update VuePress
Déploiement
Historique : Bitbucket Pipelines → AWS EC2
bitbucket-pipelines.yml :
- Build : Node 18 Alpine,
npm install+npm run docs:build, artifactdocs/.vuepress/dist/**. - Deploy : SSH vers EC2 (
SSH_PRIVATE_KEY,EC2_IP_ADDRESS), SCP versEC2_REMOTE_PATH, reload Nginx.
Cible : Cloudflare Pages
Configuration prévue (à provisionner côté dashboard Cloudflare) :
- Build command :
npm run docs:build - Output directory :
docs/.vuepress/dist - Root directory :
adb-doc/ - Node version : 20
- Branch :
main(production), preview deploy par PR
Une fois Cloudflare Pages opérationnel, la pipeline Bitbucket sera dépréciée.
Liens
- Code :
adb-doc/ - Config :
adb-doc/docs/.vuepress/config.js