Skip to content

feat(site): réconciliation #15 avec master (#11–#14, #16)#17

Merged
remigit55 merged 8 commits into
masterfrom
claude/youthful-gauss-16qujt
Jun 11, 2026
Merged

feat(site): réconciliation #15 avec master (#11–#14, #16)#17
remigit55 merged 8 commits into
masterfrom
claude/youthful-gauss-16qujt

Conversation

@remigit55

Copy link
Copy Markdown
Collaborator

Réconciliation PR #15 (refonte site) avec master

git merge origin/master dans la branche de #15. Conflits résolus par domaine — gate VERT.


Résolution des conflits — fichier par fichier

Fichier Gagnant Pourquoi
app/(public)/(site)/components/page.tsx #15 (superset) i18n chrome + COMPONENT_COUNT dynamique depuis registre + style thémé ; contenu fonctionnel (ElevationShowcase, tous composants) identique à master
app/mcp/page.tsx master (inchangé) Liste d'outils + instructions d'ajout intactes — critique pour soumission directory
app/privacy/page.tsx master (inchangé) Mentions de confidentialité intactes
app/globals.css #15 append Classes site-* ajoutées après contenu master — additif pur
app/layout.tsx #15 Ajoute LocaleProvider + lang dynamique ; hiérarchie ThemeProvider/AuthProvider préservée
app/page.tsx #15 Racine sert la homepage publique (objectif central de #15)
middleware.ts #15 Supprime redirect / → /dashboard ; conserve /settings → /dashboard
next.config.mjs #15 Supprime bloc redirects() vers /dashboard
components/site/SiteNav.tsx, SiteFooter.tsx #15 (nouveau) Shell site + toggle FR/EN
lib/i18n/ (5 fichiers) #15 (nouveau) Couche i18n typée, zéro dépendance externe
lib/llmsDoc.ts #15 (nouveau) Utilitaire pour piloter /docs/components/[slug] depuis llms.txt
app/(app)/docs/** (4 pages) #15 (nouveau) Hub docs + getting-started + catalogue composants
Fichiers générés (llms.txt, bpm-components.json, etc.) master (identiques) Aucun changement d'API composant

Contraintes vérifiées

Gate

tsc ✓  vite build ✓  doc-sync ✓  vitest 230/230 ✓  prop-surface snapshot ✓

Generated by Claude Code

claude added 8 commits June 11, 2026 07:27
Phase 0 de la refonte : inventaire des pages, écarts factuels relevés
(pas d'API interpret() dans le code — copy ajustée en conséquence),
stratégie i18n cookie sans nouvelle dépendance, plan de design et
terminologie FR/EN commune.

https://claude.ai/code/session_01QvjyxjHu5dA4iLTNcFgQ7h
- lib/i18n : dictionnaires FR/EN typés (parité garantie par le type
  Dictionary dérivé du FR), locale par cookie bpm-locale, helpers
  serveur (getLocale/getDict) et LocaleProvider client avec bascule.
- components/site : SiteNav (liens, commutateur FR/EN, CTA app) et
  SiteFooter, entièrement alimentés par les dictionnaires.
- globals.css : couche design du site public (conteneur, nav, footer,
  typographie display, grilles accueil, focus-visible, responsive)
  construite sur les tokens --bpm-* existants.
- Root layout : <html lang> suit la locale, LocaleProvider global.

https://claude.ai/code/session_01QvjyxjHu5dA4iLTNcFgQ7h
La racine ne redirige plus vers /dashboard : elle sert le pitch produit.

- Hero : titre, promesse chiffrée depuis le registre généré (zéro
  compteur en dur), CTA démarrage/galerie, panneau démo en rendu réel
  (bpm.metric, bpm.statusTracker, bpm.liveGauge à seuils).
- Sections : positionnement métier, code Python -> rendu côte à côte,
  llms.txt pour les agents, familles du catalogue (comptes dérivés du
  registre), parcours d'installation.
- Copy intégralement servie par les dictionnaires FR/EN ; metadata et
  OpenGraph localisés ; groupe (site) avec nav et footer communs.
- Middleware : seul /settings redirige encore vers /dashboard.

https://claude.ai/code/session_01QvjyxjHu5dA4iLTNcFgQ7h
- /components rejoint le groupe (site) : nav et footer communs, URL
  inchangée, contenu démo de la PR #12 conservé tel quel.
- Compteur dérivé de lib/generated/bpm-components.json (le « 104 » en
  dur divergeait du registre).
- Chrome bilingue : titre, légende, libellés de sections depuis les
  dictionnaires FR/EN ; aria-label sur la barre de sections.
- En-tête collant repositionné sous la nav du site ; fond #fff en dur
  remplacé par le token --bpm-bg-primary (compatible thème sombre).

https://claude.ai/code/session_01QvjyxjHu5dA4iLTNcFgQ7h
- /docs : le hub remplace les trois paragraphes par une vue
  d'ensemble en cartes — démarrage, catalogue (compte dérivé du
  registre), galerie, llms.txt, changelog, prérequis production.
- /docs/getting-started : parcours linéaire honnête en trois étapes
  (le faux « code adapté au cas d'usage » disparaît), vouvoiement
  aligné sur le reste du site, aperçu live du premier composant,
  pistes suivantes (catalogue, llms.txt pour agents).
- Tout le texte vient des dictionnaires FR/EN.

https://claude.ai/code/session_01QvjyxjHu5dA4iLTNcFgQ7h
…'API tirée de llms.txt

- /docs/components : titre, description (compte interpolé depuis le
  registre) et recherche servis par les dictionnaires FR/EN.
- /docs/components/[slug] : la fiche dynamique affiche désormais la
  signature de props extraite de public/llms.txt (lib/llmsDoc) — la
  même source que lisent les agents, rien de saisi à la main.

https://claude.ai/code/session_01QvjyxjHu5dA4iLTNcFgQ7h
….config

La racine était redirigée à trois endroits (app/page.tsx, middleware,
next.config). Les deux premiers étaient déjà traités ; sans ce dernier
retrait, l'accueil public restait inaccessible (308 permanent).

https://claude.ai/code/session_01QvjyxjHu5dA4iLTNcFgQ7h
@remigit55
remigit55 marked this pull request as ready for review June 11, 2026 07:54
@remigit55
remigit55 merged commit ffe2a68 into master Jun 11, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants