Files
highland_games_website/TODO.md
T
Mathew 1d2c48cb93
Deploy / deploy (push) Successful in 1m3s
Renomme le jeu en Emberwild + déploiement Gitea Actions
- Jeu « Project One » → « Emberwild » (slug `emberwild`) dans lib/games.ts
  et toutes les références (accueil, devblog, README)
- Photo d'équipe (CEO/dev) câblée sur /image/teams/CEO_Dev.jpg
- CI/CD porté de GitHub Actions vers Gitea Actions
  (.gitea/workflows/deploy.yml) : build + déploiement auto au push sur master
- deploy.sh : déploiement manuel de secours

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-01 20:48:41 +02:00

72 lines
3.7 KiB
Markdown

# TODO — Highland Games Studio Website
Liste des tâches restantes, classées par priorité.
Dernière mise à jour : 2026-06-22
---
## 🔴 P0 — Critique (avant toute mise en ligne)
- [ ] **Vidéo 84 Mo dans Git** (`public/Video/Header_Video.mp4`)
- [ ] Compresser la vidéo (cible < 5 Mo, ~1080p) avec ffmpeg
- [ ] La sortir de l'historique Git (BFG ou `git-filter-repo`) — sinon elle reste à vie dans le repo
- [ ] Ajouter un `poster` (image) sur la balise `<video>` de la page d'accueil
- [ ] Idéalement : servir le fichier hors-Git (CDN / objet statique)
- [ ] **Formulaires non fonctionnels** (perdent les données, juste un `console.log`)
- [x] Choisir un service email → **Resend**
- [x] Brancher le formulaire de contact → `app/actions/contact.ts`
- [ ] Brancher la newsletter → `app/actions/subscribe.ts`
- [x] Clé API + adresses lues depuis l'env (`.env.example` créé)
- [ ] **À faire côté toi** : `npm install resend`, créer un compte Resend,
vérifier le domaine, et renseigner `RESEND_API_KEY` / `CONTACT_TO_EMAIL`
/ `CONTACT_FROM_EMAIL` (en local dans `.env.local` + en prod sur le VPS)
- [ ] **Déploiement à valider en réel** (Gitea Actions → Hetzner)
- [x] Workflow porté sur Gitea (`.gitea/workflows/deploy.yml`, trigger `master`)
- [ ] Configurer les secrets `SSH_*` dans Gitea (repo → Settings → Actions → Secrets)
- [ ] Vérifier que `/var/www/highland` peut `git pull` le repo Gitea privé (deploy key/token)
- [ ] Tester un push qui déclenche bien le deploy sur le Hetzner
---
## 🟠 P1 — Important (contenu avant lancement public)
- [ ] **Remplacer tout le contenu placeholder**
- [x] Vrai nom du jeu → **Emberwild** (`lib/games.ts`, slug `emberwild`)
- [ ] Vrais noms / bios de l'équipe (au lieu de « Founder One / Two ») → `app/studio/page.tsx`
- [ ] Vrais liens réseaux sociaux (actuellement tous en `href="#"`) → `app/components/SocialLinks.tsx`
- [ ] Vraies images de jeu / screenshots (le logo sert de placeholder partout)
- [ ] **Configurer l'URL du site**
- [x] Centralisée dans `lib/site.ts` (pilotable par `NEXT_PUBLIC_SITE_URL`)
- [ ] Confirmer le domaine final et définir la variable d'env en production
- [ ] **Asset inutilisé** : `public/image/Studio/Full Logo.png` n'est référencé nulle part
- [ ] L'utiliser quelque part, ou le supprimer
---
## 🟢 P2 — Plus tard (qualité / robustesse)
- [ ] **Monitoring d'erreurs** (ex. Sentry) — le texte de `app/error.tsx` ne ment plus, mais aucune alerte n'existe
- [ ] **Rate-limiting** sur les server actions (anti-spam une fois les emails branchés)
- [ ] **Vulnérabilités npm** : `npm audit` remonte 5 alertes (1 low, 4 moderate) — à examiner
- [ ] **Warning build** : `app/opengraph-image.tsx` utilise `runtime = "edge"` qui désactive la génération statique de la page — à vérifier si volontaire
- [ ] **Press kit** : la page contact promet des assets « soon » — préparer un vrai press kit
---
## ✅ Déjà fait (2026-06-22)
- [x] Supprimé les 5 SVG par défaut de create-next-app (inutilisés)
- [x] Retiré 4 dépendances MDX inutilisées (`@next/mdx`, `@mdx-js/*`, `@types/mdx`)
- [x] Ajouté `sharp` en devDependency (requis par `scripts/build-favicon.mjs`)
- [x] Dédupliqué `.gitignore` (contenu collé en double)
- [x] Réécrit le `README.md` (doc réelle au lieu du boilerplate)
- [x] Corrigé le trigger de déploiement (`main``master`, + `git pull`)
- [x] Corrigé une erreur de lint dans `Navbar.tsx` (setState dans useEffect)
- [x] Retiré le texte trompeur « team has been notified » dans `error.tsx`
- [x] Centralisé l'URL du site dans `lib/site.ts`
- [x] Resynchronisé `package-lock.json` (nécessaire pour `npm ci` au deploy)