45 lines
2.3 KiB
Markdown
45 lines
2.3 KiB
Markdown
### Objet
|
||
Analyse synthétique de `lecoffre-front` (Next.js) : périmètre, dépendances, configuration, intégrations et points d’attention.
|
||
|
||
### Périmètre et stack
|
||
- **Framework**: Next.js 14 (React 18), rendu côté serveur désactivable selon pages
|
||
- **Langage**: TypeScript
|
||
- **Styles**: SCSS + MUI (@mui/material), Emotion
|
||
- **Bundle**: `output: 'standalone'`, `basePath: '/lecoffre'`
|
||
|
||
### Arborescence notable
|
||
- **`src/front/`**: API client (services, entités, SDK) et composants UI (DesignSystem, Layouts, Elements)
|
||
- **`pages/`**: routes Next (tableau client, gestion utilisateurs, dossiers, documents, souscriptions)
|
||
- **`src/common/Api/LeCoffreApi`**: modules Admin/Customer/Notary/SuperAdmin et `sdk`
|
||
- **`src/front/Stores/`**: stores locaux (User, Customer, Window, Toasts)
|
||
- **`src/front/Services/`**: services utilitaires (JWT, PDF, Watermark, Crypto, Cookie)
|
||
|
||
### Configuration et variables
|
||
- **`next.config.js`**: publie `NEXT_PUBLIC_*` aux clients et serveur; `reactStrictMode: false`; `ignoreBuildErrors: true`
|
||
- **BasePath**: `/lecoffre` (impacte le routage et les assets)
|
||
- **Intégrations**: Hotjar, GTM, Docaposte, 4NK (iframe/URL), Idnot (OAuth)
|
||
|
||
### Dépendances clés
|
||
- **UI**: `@mui/material`, `@emotion/*`, `react-select`, `react-toastify`
|
||
- **Utilitaires**: `jwt-decode`, `file-saver`, `jszip`, `pdf-lib`, `sass`, `sharp`
|
||
- **Ressources**: `le-coffre-resources` (dépôt Git 4NK)
|
||
|
||
### Intégrations externes (indiciaires)
|
||
- **Back**: via `NEXT_PUBLIC_BACK_API_*` et `NEXT_PUBLIC_API_URL`
|
||
- **Idnot**: endpoints OAuth (authorize, base_url, redirect_uri)
|
||
- **Docaposte**: `NEXT_PUBLIC_DOCAPOSTE_API_URL`
|
||
|
||
### Points d’attention
|
||
- **TypeScript**: `ignoreBuildErrors: true` masque des erreurs de typage
|
||
- **BasePath**: vérifier la cohérence côté Nginx et lors du déploiement
|
||
- **Ressources Git**: accès SSH requis pour `le-coffre-resources`
|
||
- **Sécurité**: exposition de multiples `NEXT_PUBLIC_*` (vérifier qu’aucun secret n’est divulgué)
|
||
|
||
### Tests et qualité
|
||
- **Scripts**: `build` sans lint, `lint` séparé, `format` ciblé `src/`
|
||
- **`tests/`**: présent (à enrichir avec scénarios e2e/smoke sur pages principales)
|
||
|
||
### Déploiement
|
||
- **Dockerfile**: présent (build Next standalone)
|
||
- **Intégration**: orchestré via `lecoffre_node` (voir analyse dédiée)
|