- BRIEF-Claude-Code.md: Claude Code start brief (13 sections) - 2 PDF deliverables: Strategie & Contenu (84p) + Design Handoff (31p) - README.md: project overview, local setup, structure, conventions - MISSING-ASSETS.md: live tracker for missing media (hero video, photos, logos) - .gitignore: excludes ThirdParty/ (commercial plugin ZIPs), PDF text extracts, WP runtime Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
115 lines
4.9 KiB
Markdown
115 lines
4.9 KiB
Markdown
# Asterion VR — Refonte du site web 2026
|
|
|
|
Repo de la refonte d'**asterionvr.com** : nouveau site institutionnel B2B/B2G de la plateforme XR PROSERVE pour les forces de sécurité européennes (police, special forces, military, firefighters).
|
|
|
|
> **Stack** : WordPress 6.x + Bricks Builder (parent) + child theme custom `asterion-bricks` + WPML.
|
|
> **Cible** : Lighthouse 90+, WCAG 2.1 AA, mobile-first, RGPD-natif, hébergement français.
|
|
|
|
---
|
|
|
|
## Documents de référence
|
|
|
|
À lire dans cet ordre **avant tout travail technique** :
|
|
|
|
1. `BRIEF-Claude-Code.md` — brief de démarrage projet (13 sections, contraintes, conventions).
|
|
2. `Asterion-VR_Refonte-2026_Strategie-et-Contenu.pdf` — livrable 1 (84 p) : diagnostic, stratégie, sitemap, copy EN prête de toutes les pages.
|
|
3. `Asterion-VR_Refonte-2026_Design-Handoff-Specification.pdf` — livrable 2 (31 p) : tokens, composants UI, wireframes des 7 templates, motion, a11y.
|
|
|
|
Les `.txt` extraits des PDF sont gitignorés. Pour les régénérer :
|
|
|
|
```bash
|
|
pdftotext -layout "Asterion-VR_Refonte-2026_Design-Handoff-Specification.pdf" "design-handoff.txt"
|
|
pdftotext -layout "Asterion-VR_Refonte-2026_Strategie-et-Contenu.pdf" "strategie-et-contenu.txt"
|
|
```
|
|
|
|
(`pdftotext` est inclus dans Git for Windows : `C:\Program Files\Git\mingw64\bin\pdftotext.exe`.)
|
|
|
|
---
|
|
|
|
## Setup local (LocalWP + symlink Git)
|
|
|
|
### 1. Pré-requis
|
|
|
|
- **LocalWP** (https://localwp.com) configuré en mode `localhost` (Preferences → Advanced → Router Mode = `localhost`) pour cohabiter avec d'autres stacks locales (XAMPP, etc.).
|
|
- Site LocalWP créé : nom **Asterion 2026**, dossier `C:\Users\j_foucher\Local Sites\asterion-2026\`.
|
|
- ZIP des plugins commerciaux (chacun doit fournir les siens, depuis son propre compte) :
|
|
- `bricks.X.Y.Z.zip` — depuis https://bricksbuilder.io
|
|
- `sitepress-multilingual-cms.X.Y.Z.zip` — depuis https://wpml.org
|
|
- À déposer dans `ThirdParty/` (gitignored).
|
|
|
|
### 2. Installer Bricks parent
|
|
|
|
1. Décompresser `ThirdParty/bricks.X.Y.Z.zip` dans `<LocalWP site>/app/public/wp-content/themes/`.
|
|
2. Activer Bricks dans WP Admin → Apparence → Thèmes.
|
|
3. Renseigner la license dans Bricks → License (depuis ton compte bricksbuilder.io).
|
|
|
|
### 3. Installer WPML
|
|
|
|
1. Dans WP Admin → Extensions → Ajouter → Téléverser, charger `ThirdParty/sitepress-multilingual-cms.X.Y.Z.zip`.
|
|
2. Activer le plugin et entrer la clé de license depuis ton compte wpml.org.
|
|
|
|
### 4. Symlink le child theme depuis ce repo vers LocalWP
|
|
|
|
Depuis une **PowerShell admin** :
|
|
|
|
```powershell
|
|
New-Item -ItemType SymbolicLink `
|
|
-Path "C:\Users\j_foucher\Local Sites\asterion-2026\app\public\wp-content\themes\asterion-bricks" `
|
|
-Target "C:\ASTERION\GIT\WP2026\wp-content\themes\asterion-bricks"
|
|
```
|
|
|
|
Puis dans WP Admin → Apparence → Thèmes, activer **Asterion Bricks** (le child theme).
|
|
|
|
---
|
|
|
|
## Structure du repo
|
|
|
|
```
|
|
WP2026/
|
|
├── BRIEF-Claude-Code.md # brief projet (lecture obligatoire)
|
|
├── README.md # ce fichier
|
|
├── MISSING-ASSETS.md # tracking des visuels/medias manquants
|
|
├── *.pdf # 2 livrables stratégie + design (sources de vérité)
|
|
├── ThirdParty/ # gitignored — ZIP plugins commerciaux à déposer manuellement
|
|
│ ├── bricks.*.zip
|
|
│ └── sitepress-multilingual-cms.*.zip
|
|
└── wp-content/
|
|
└── themes/
|
|
└── asterion-bricks/ # le child theme — coeur du travail
|
|
├── style.css # en-tête WP + import tokens
|
|
├── functions.php # hooks, registers, queries
|
|
├── theme.json # tokens globaux (Gutenberg + Bricks)
|
|
├── assets/
|
|
│ ├── css/ # tokens.css, components.css, utilities.css
|
|
│ ├── js/ # vanilla JS, defer
|
|
│ ├── fonts/ # Inter + Inter Display self-hosted (RGPD)
|
|
│ └── img/
|
|
├── templates/ # exports Bricks JSON (versionnés)
|
|
├── inc/ # CPT, ACF field groups, SEO schema
|
|
└── README.md
|
|
```
|
|
|
|
---
|
|
|
|
## Conventions
|
|
|
|
- **CSS** : préfixe `av-` (asterion-vr), nommage BEM-light, zéro hardcode (tout via tokens).
|
|
- **JS** : vanilla, defer, modules ES6 si nécessaire.
|
|
- **Images** : AVIF + WebP + JPG fallback, lazy-loading natif sauf hero.
|
|
- **Vidéos** : MP4 H.264 + WebM VP9, autoplay muted plays-inline loop, poster image.
|
|
- **Commits** : Conventional Commits (`feat:`, `fix:`, `chore:`, `style:`, `refactor:`, `test:`, `docs:`).
|
|
- **Branches** : `main` = stable, `feat/<scope>` = work in progress, merge après validation.
|
|
|
|
---
|
|
|
|
## Hors scope phase actuelle
|
|
|
|
Production (OVH/O2switch + Cloudflare), migration depuis Avada, plan 301, traduction FR (linguiste interne), création articles blog éditoriaux (post-launch).
|
|
|
|
---
|
|
|
|
## Contact
|
|
|
|
- **Client** : Jérôme Foucher — Asterion VR — jerome.foucher@asterionvr.com
|
|
- **Repo** : git.polymorph.fr (privé)
|