Skip to content

docs: Documentation VitePress bilingue + CI GitHub Pages - #148

Merged
AntoineJT merged 14 commits into
masterfrom
vitepress-docs
Jun 14, 2026
Merged

docs: Documentation VitePress bilingue + CI GitHub Pages#148
AntoineJT merged 14 commits into
masterfrom
vitepress-docs

Conversation

@RedsTom

@RedsTom RedsTom commented Jun 14, 2026

Copy link
Copy Markdown
Contributor

Résumé

Migration de la documentation vers VitePress avec support i18n (français / anglais) et déploiement automatique sur GitHub Pages. Le site vit dans docs/site/ (workspace
pnpm omnibot-docs) ; les notes internes restent en markdown simple dans docs/.

Changements

Infrastructure

  • VitePress dans docs/site/, config i18n (fr + en).
  • Workspace pnpm omnibot-docs : pnpm --filter omnibot-docs dev / build.
  • Lockfile unique à la racine (pnpm-workspace.yaml pointe sur docs/site) ; plus de lockfile imbriqué.
  • Base path configurable via DOCS_BASE (défaut : /OmniBot/).

Documentation (contenu)

  • 8 pages FR + 8 pages EN : Pour commencer, Créer un module, Commandes, Écouteurs, Interactions, Configuration, Services, Base de données.
  • Landing page racine avec sélection de langue.
  • Chemins d'import #lib/... (au lieu des relatifs ../../../lib/...).

Réorganisation

  • Site VitePress regroupé sous docs/site/.
  • Notes internes (functional.md, specs/, review/) conservées en markdown dans docs/, hors build VitePress.
  • Anciens fichiers plats (modules.md, commands.md, …) supprimés.

CI — .github/workflows/docs.yml

  • Build sur push master et sur PR (validation du build docs) ; déploiement réservé aux push master.
  • environment: github-pages ; permissions Pages (pages / id-token) réduites au seul job deploy.
  • Install scopé --filter omnibot-docs (n'installe pas tout l'arbre du bot).
  • Actions à jour et épinglées selon la politique Renovate (actions/* en tag, tierces en SHA).
  • Déduplication via ancres YAML (paths, condition de déploiement).

Retours de revue (Copilot) traités

  • pnpm --filter docs--filter omnibot-docs (README, AGENTS).
  • Snippets Command / InteractionHandler alignés sur l'API réelle (config requis, args: string[], générique Interaction).
  • Lockfile imbriqué docs/pnpm-lock.yaml supprimé.
  • Référence /logo.svg (asset absent) retirée du hero — suivie dans AUDIT.md (#31).

Déploiement

Après merge : Settings → Pages → Source : GitHub Actions.

RedsTom added 9 commits June 14, 2026 03:25
- Move specs/, review/, and functional.md into _internal/
- Update docs/README.md with VitePress instructions
- Update AGENTS.md with docs workspace commands
- Remove modules.md, commands.md, listeners.md, interactions.md,
  services.md, prisma.md, functional.md (moved to _internal/)
- Remove specs/ and review/ directories (moved to _internal/)
- Add landing page with feature overview
- Add getting-started guide (architecture, conventions, imports)
- Add creating-a-module guide (structure, lifecycle hooks)
- Add commands guide (slash commands, registration, propagation)
- Add listeners guide (event listeners, activation)
- Add interactions guide (buttons, modals, select menus)
- Add configuration guide (ConfigType, ENUM, lists, defaults)
- Add services guide (business logic encapsulation)
- Add database guide (Prisma multi-file schema, migrations)
- Add landing page with feature overview
- Add getting-started, module, commands, listeners guides
- Add interactions, configuration, services, database guides
- Use jdx/mise-action v2 for Node/pnpm from .mise.toml
- pnpm install --frozen-lockfile, then build docs
- Deploy to GitHub Pages via actions/upload-pages-artifact
  and actions/deploy-pages
- Trigger: push to master touching docs/** or CI config
- Add index.md as a VitePress landing page
- Restructure locales: fr/ and en/ instead of root=fr
- Add Accueil/Home nav links to both locales
Comment thread .github/workflows/docs.yml Fixed
@RedsTom RedsTom changed the title Documentation VitePress bilingue + CI GitHub Pages docs: Documentation VitePress bilingue + CI GitHub Pages Jun 14, 2026
@RedsTom
RedsTom requested review from AntoineJT and Copilot June 14, 2026 01:36

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR migrates the project documentation to a bilingual (FR/EN) VitePress site and adds CI to build and deploy the docs to GitHub Pages.

Changes:

  • Adds a VitePress site under docs/ with i18n (French + English) and a new landing page.
  • Moves legacy markdown docs/specs into docs/_internal/ and introduces new structured guide pages.
  • Adds a GitHub Actions workflow to build and deploy the docs to GitHub Pages on pushes to master.

Reviewed changes

Copilot reviewed 31 out of 39 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
pnpm-workspace.yaml Adds docs as a pnpm workspace package and enables esbuild builds needed for Vite/VitePress tooling.
.github/workflows/docs.yml Builds and deploys the VitePress site to GitHub Pages.
AGENTS.md Documents how to run/build the docs locally.
docs/.gitignore Ignores VitePress build/cache artifacts for the docs workspace.
docs/.vitepress/config.ts Adds VitePress config (base path, locales, sidebar/nav, excludes).
docs/README.md Updates README to point to VitePress workflows and new docs structure.
docs/index.md Adds VitePress home/landing page with language entry points.
docs/en/index.md Adds English home page.
docs/fr/index.md Adds French home page.
docs/package.json Introduces the omnibot-docs workspace package with VitePress scripts.
docs/pnpm-lock.yaml Adds a docs-local pnpm lockfile for the docs workspace.
docs/fr/guide/getting-started.md Adds FR “Getting started” guide.
docs/fr/guide/creating-a-module.md Adds FR module creation guide.
docs/fr/guide/commands.md Adds FR commands guide.
docs/fr/guide/listeners.md Adds FR listeners guide.
docs/fr/guide/interactions.md Updates/creates FR interactions guide with new API notes and imports.
docs/fr/guide/configuration.md Adds FR typed configuration guide.
docs/fr/guide/services.md Adds FR services guide.
docs/fr/guide/database.md Adds FR Prisma/database guide.
docs/en/guide/getting-started.md Adds EN “Getting started” guide.
docs/en/guide/creating-a-module.md Adds EN module creation guide.
docs/en/guide/commands.md Adds EN commands guide.
docs/en/guide/listeners.md Adds EN listeners guide.
docs/en/guide/interactions.md Adds EN interactions guide.
docs/en/guide/configuration.md Adds EN typed configuration guide.
docs/en/guide/services.md Adds EN services guide.
docs/en/guide/database.md Adds EN Prisma/database guide.
docs/commands.md Removes legacy standalone markdown docs page.
docs/listeners.md Removes legacy standalone markdown docs page.
docs/modules.md Removes legacy standalone markdown docs page.
docs/prisma.md Removes legacy standalone markdown docs page.
docs/services.md Removes legacy standalone markdown docs page.
docs/_internal/functional.md Moves legacy “functional behavior” documentation into internal docs area.
docs/_internal/specs/thread-creator-queue.md Moves internal spec content into docs/_internal/.
docs/_internal/specs/module-config.md Moves internal spec content into docs/_internal/.
docs/_internal/specs/autopin.md Moves internal spec content into docs/_internal/.
docs/_internal/review/dev-guild-commands-findings.md Moves internal review notes into docs/_internal/.
docs/_internal/review/config-completion-findings.md Moves internal review notes into docs/_internal/.
Files not reviewed (2)
  • docs/pnpm-lock.yaml: Generated file
  • pnpm-lock.yaml: Generated file
Comments suppressed due to low confidence (1)

docs/fr/guide/interactions.md:32

  • Le snippet InteractionHandler n'est pas valide TypeScript (args[]) et fait référence à un générique T non défini. L'API réelle est générique et attend args: string[] + config obligatoire (voir src/lib/interaction.ts).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread docs/README.md Outdated
Comment thread docs/README.md Outdated
Comment thread AGENTS.md Outdated
Comment thread docs/site/fr/guide/commands.md
Comment thread docs/site/en/guide/commands.md
Comment thread docs/en/guide/interactions.md Outdated
Comment thread docs/index.md Outdated
Comment thread docs/pnpm-lock.yaml Outdated
AntoineJT and others added 4 commits June 14, 2026 15:26
- Move the VitePress site under `docs/site/` and lift the internal notes
  (`functional.md`, `specs/`, `review/`) out of `_internal/` back to `docs/`.
- Point `pnpm-workspace.yaml` at `docs/site` and regenerate the root
  `pnpm-lock.yaml` as the single source of truth.
- Remove the nested `docs/pnpm-lock.yaml` (ignored inside a workspace and a
  source of divergence).
- Fix `pnpm --filter docs` → `--filter omnibot-docs` in README/AGENTS,
  repoint the AGENTS doc table, and trim now-dead `srcExclude` entries.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- `config` is a required parameter — drop the misleading `config?`.
- `InteractionHandler`: use `args: string[]` instead of the invalid `args[]`
  and declare the `Interaction` generic (was an undefined `T`).
- Applies to both the EN and FR guides. Addresses the Copilot review.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Fix the artifact path to `docs/site/.vitepress/dist` after the move.
- Add the `github-pages` environment to the deploy job.
- Build on pull requests too; keep deploy gated to master pushes.
- Scope the install with `--filter omnibot-docs` and restrict the
  `pages`/`id-token` permissions to the deploy job.
- Bump and pin actions per the Renovate policy (checkout v6, upload-pages v5,
  deploy-pages v5, mise-action pinned to its commit SHA).
- Factor the duplicated `paths` and deploy condition with YAML anchors.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Remove the `/logo.svg` hero reference (no asset yet); tracked as `#31`.
- Record the `#28` decision: keep the current CI setup rather than adopt
  `jdx/mise-action` (would lose setup-node's pnpm cache, pull unneeded tools).
- Add `#32`–`#36` to the backlog.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 35 out of 36 changed files in this pull request and generated 4 comments.

Files not reviewed (1)
  • pnpm-lock.yaml: Generated file
Comments suppressed due to low confidence (1)

docs/site/fr/guide/interactions.md:183

  • This example uses logger.error(...) but doesn’t show importing logger, so it’s not copy/pasteable as-is. Adding the #lib/logger.js import in the snippet would make the documentation self-contained.

Comment thread docs/site/.vitepress/config.ts Outdated
Comment thread docs/site/.vitepress/config.ts
Comment thread docs/site/en/guide/interactions.md
Comment thread docs/site/README.md
- Normalize `DOCS_BASE` to always start and end with a slash so an override
  like `/OmniBot` (no trailing slash) doesn't break VitePress routing/assets.
- Point the locale nav home links at `/fr/` and `/en/` instead of the shared
  root `/`, keeping each locale self-contained. Update `#33`.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@AntoineJT
AntoineJT enabled auto-merge (rebase) June 14, 2026 14:12
@AntoineJT
AntoineJT merged commit 196cd8d into master Jun 14, 2026
6 checks passed
@AntoineJT
AntoineJT deleted the vitepress-docs branch June 14, 2026 14:12
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.

4 participants