Structure du Projet (PP Tree)
Date : 2026-09-06
Approche : Monorepo avec Trunk-based Development
Environnements : dev, prod
Structure proposΓ©e
Section titled βStructure proposΓ©eβ/home/anderson/PP/βββ apps/β βββ web/ # Projet Astro (amn-astro)β β βββ src/β β βββ public/β β βββ astro.config.mjsβ β βββ package.jsonβ βββ studio/ # Projet Sanity (amn)β βββ schemas/β βββ studio/β βββ package.jsonβββ services/ # Workers Cloudflareβ βββ middleware/β β βββ src/β β βββ wrangler.tomlβ β βββ package.jsonβ βββ form-handler/β βββ cms-webhook-receiver/β βββ media-upload/β βββ media-cleanup/β βββ sanity-backup/βββ docs/ # Documentationβ βββ L1_Contenu/β β βββ sanity/β β βββ astro/β β βββ cloudflare/β βββ L2_Presentation/β β βββ astro/β β βββ pagefind/β βββ L3_Backend/β βββ cloudflare/βββ GettingStarted/ # Guidesβ βββ Sprint0-Setup-Initial.TODO.mdβ βββ Sprint0-Setup-Initial.DONE.mdβ βββ Day1-Setup-Local.mdβ βββ outputs-for-wrangler-toml-config.mdβββ .github/ # CI/CDβ βββ workflows/β β βββ ci.ymlβ β βββ deploy-dev.ymlβ β βββ deploy-prod.ymlβ βββ pull_request_template.mdβββ wrangler.toml # Configuration Wrangler globaleβββ package.json # Root package.json (scripts monorepo)βββ .env.example # Variables d'environnementβββ .gitignoreStructure actuelle
Section titled βStructure actuelleβ/home/anderson/PP/βββ amn/ # Projet Sanityβββ amn-astro/ # Projet Astroβββ docs/ # Documentationβββ .wrangler/ # Configuration Wranglerβββ GettingStarted/ # Guidesβββ Templates/ # Templates (ancien)βββ .github/ # CI/CDβββ wrangler.toml # Configuration Wrangler (créé)βββ .env.example # Variables d'environnement (créé)Actions de rΓ©organisation
Section titled βActions de rΓ©organisationβ-
CrΓ©er la structure monorepo
- CrΓ©er
apps/ - DΓ©placer
amn-astro/βapps/web/ - DΓ©placer
amn/βapps/studio/ - CrΓ©er
services/(pour les futurs Workers)
- CrΓ©er
-
Nettoyer
- Supprimer
Templates/(ancien) - Supprimer
.wrangler/(configuration locale, non nΓ©cessaire)
- Supprimer
-
CrΓ©er le root package.json
- Scripts pour le monorepo
- Workspaces npm
Root package.json
Section titled βRoot package.jsonβ{ "name": "pp-monorepo", "version": "1.0.0", "private": true, "workspaces": [ "apps/*", "services/*" ], "scripts": { "dev": "npm run dev --workspace=apps/web", "dev:studio": "npm run dev --workspace=apps/studio", "build": "npm run build --workspace=apps/web", "build:studio": "npm run build --workspace=apps/studio", "test": "npm run test --workspaces", "lint": "npm run lint --workspaces", "typecheck": "npm run typecheck --workspaces" }, "devDependencies": { "@types/node": "^20.0.0", "typescript": "^5.0.0" }}Avantages de cette structure
Section titled βAvantages de cette structureβ- Monorepo : Gestion unifiΓ©e des dΓ©pendances
- Workspaces npm : Partage des dΓ©pendances
- SΓ©paration claire : apps vs services
- ScalabilitΓ© : Facile dβajouter de nouveaux services
- CI/CD simplifiΓ© : Un seul repository