first commit
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
# Checklist lancement V1 (Ben-to)
|
||||
|
||||
Document opérationnel aligné sur le dépôt : contenu embarqué, qualité, déploiement web, Android / Play Store.
|
||||
|
||||
## 1. Contenu et assets
|
||||
|
||||
- Finaliser les `.bentext` et visuels sous `ressources/` (sprites ingrédients : `ingredient-sprites.bentext` + `ingredients.png`, voir README).
|
||||
- `npm run pipeline:recipes` puis `npm run build:web` — vérifier `apps/web/dist/recipes/catalog.json`.
|
||||
|
||||
## 2. Qualité (gel avant release)
|
||||
|
||||
À la racine du dépôt :
|
||||
|
||||
```bash
|
||||
npm run pipeline:recipes
|
||||
npm run test:ci
|
||||
npm run check:quality
|
||||
```
|
||||
|
||||
Prérequis e2e : navigateurs Playwright (`npx playwright install chromium` si besoin).
|
||||
|
||||
## 3. Web — image Docker et smoke tests
|
||||
|
||||
Build image (identique à une prod type CapRover servant le `dist`) :
|
||||
|
||||
```bash
|
||||
docker build -t ben-to-web:local .
|
||||
docker run --rm -p 8080:3000 ben-to-web:local
|
||||
```
|
||||
|
||||
Smoke manuel (adapter le port) :
|
||||
|
||||
- Page d’accueil charge le builder.
|
||||
- Une URL recette du type `http://localhost:8080/r/<baseId>/<variantId>` ouvre la fiche (IDs présents dans `catalog.json`).
|
||||
- Pages légales : `/a-propos`, `/cgu`, `/mentions-legales`, `/confidentialite`.
|
||||
- SEO fichiers statiques : `/robots.txt` et `/sitemap.xml` pointent vers **[https://ben-to.fr](https://ben-to.fr)** ; les langues passent par l’UI (pas d’URL `/fr/` dédiées).
|
||||
|
||||
## 4. Android — build et signature release
|
||||
|
||||
Chaîne locale :
|
||||
|
||||
```bash
|
||||
npm run pipeline:recipes
|
||||
npm run build:web
|
||||
npm run mobile:sync
|
||||
```
|
||||
|
||||
Signature Play Store :
|
||||
|
||||
1. Créer un keystore (une fois), le placer sous `apps/mobile/android/` (ex. `release.keystore`).
|
||||
2. Copier `apps/mobile/android/keystore.properties.example` → `keystore.properties` et renseigner mots de passe / alias (fichier non versionné).
|
||||
3. Dans Android Studio : **Build > Generate Signed Bundle / APK** ou en CLI `./gradlew bundleRelease` depuis `apps/mobile/android`.
|
||||
|
||||
Sans `keystore.properties`, le type `release` n’applique pas la signature upload — utiliser `bundleDebug` pour tests internes uniquement.
|
||||
|
||||
Tests physiques recommandés : navigation builder, **partager** (plugin Capacitor), lien `/r/...` après navigation vers la recette.
|
||||
|
||||
Retirer tout mode `server.url` / cleartext dans `apps/mobile/capacitor.config.ts` utilisé pour le dev LAN avant publication.
|
||||
|
||||
## 5. Google Play — métadonnées
|
||||
|
||||
- Compte développeur Play Console.
|
||||
- Descriptions, captures d’écran téléphone, icône / feature graphic selon gabarits Google.
|
||||
- Formulaire **sécurité des données** : refléter la réalité (ex. analytics dans `apps/web/src/infra/analytics.ts`, stockage local).
|
||||
- URL **politique de confidentialité** si la déclaration l’exige.
|
||||
- Incrémenter `versionCode` / `versionName` dans `apps/mobile/android/app/build.gradle` pour chaque dépôt Play.
|
||||
|
||||
## 6. CI — artefact Android
|
||||
|
||||
Le workflow `.github/workflows/mobile-release.yml` construit un **AAB debug** (sans keystore Play) pour valider la chaîne Gradle ; la publication production reste signée localement ou via secrets CI ultérieurs.
|
||||
|
||||
## Hors périmètre V1 assumé
|
||||
|
||||
- Pas de compte cloud ni synchro serveur utilisateur : catalogue embarqué, mises à jour par nouvelles versions.
|
||||
- iOS : traiter dans une release dédiée (compte Apple Developer, Xcode).
|
||||
|
||||
Reference in New Issue
Block a user