@gitpagedocs/cli 0.0.10 → 0.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,38 +4,20 @@ const DOOM_BUNDLE_URL = "https://v8.js-dos.com/bundles/doom.jsdos";
4
4
  const COPY = {
5
5
  en: {
6
6
  title: "DOOM in an HTML container",
7
- description: "An interactive example with its own title, description and game area. Start DOOM below to load the external js-dos player.",
8
- play: "Load DOOM",
9
- loading: "Loading the player. This may take a moment…",
10
- ready: "DOOM is ready. Click the game area to use the keyboard.",
11
- error: "The player could not load. Check your connection and try again, or open the official game page.",
12
- instructions: "Press Enter to select a menu item. Use the arrow keys to move, Ctrl to fire, Space to open doors and Esc to open the game menu.",
13
- notice: "Internet access is required. The player and game load from js-dos only after you press the button. Keyboard recommended; sound follows your browser settings.",
14
- source: "Open DOOM on DOS Zone",
7
+ description: "Play DOOM in the embedded js-dos player.",
8
+ error: "The player could not load. Check your connection and reload this page to try again.",
15
9
  player: "DOOM game area",
16
10
  },
17
11
  pt: {
18
12
  title: "DOOM em um container HTML",
19
- description: "Um exemplo interativo com título, descrição e área de jogo próprios. Inicie o DOOM abaixo para carregar o player externo js-dos.",
20
- play: "Jogar DOOM",
21
- loading: "Carregando o player. Isso pode levar alguns instantes…",
22
- ready: "DOOM pronto. Clique na área do jogo para usar o teclado.",
23
- error: "Não foi possível carregar o player. Verifique sua conexão e tente novamente ou abra a página oficial do jogo.",
24
- instructions: "Pressione Enter para selecionar uma opção. Use as setas para se mover, Ctrl para atirar, Espaço para abrir portas e Esc para abrir o menu do jogo.",
25
- notice: "É necessário acesso à internet. O player e o jogo são carregados do js-dos somente depois do clique. Teclado recomendado; o som segue as configurações do navegador.",
26
- source: "Abrir DOOM no DOS Zone",
13
+ description: "Jogue DOOM no player js-dos incorporado.",
14
+ error: "Não foi possível carregar o player. Verifique sua conexão e recarregue esta página para tentar novamente.",
27
15
  player: "Área do jogo DOOM",
28
16
  },
29
17
  es: {
30
18
  title: "DOOM en un contenedor HTML",
31
- description: "Un ejemplo interactivo con título, descripción y área de juego propios. Inicia DOOM a continuación para cargar el reproductor externo js-dos.",
32
- play: "Cargar DOOM",
33
- loading: "Cargando el reproductor. Esto puede tardar un momento…",
34
- ready: "DOOM está listo. Haz clic en el juego para usar el teclado.",
35
- error: "No se pudo cargar el reproductor. Comprueba tu conexión e inténtalo de nuevo o abre la página oficial del juego.",
36
- instructions: "Pulsa Enter para seleccionar una opción. Usa las flechas para moverte, Ctrl para disparar, Espacio para abrir puertas y Esc para abrir el menú del juego.",
37
- notice: "Se necesita conexión a internet. El reproductor y el juego se cargan desde js-dos solo después de pulsar el botón. Se recomienda teclado; el sonido sigue la configuración del navegador.",
38
- source: "Abrir DOOM en DOS Zone",
19
+ description: "Juega a DOOM en el reproductor js-dos integrado.",
20
+ error: "No se pudo cargar el reproductor. Comprueba tu conexión y recarga esta página para intentarlo de nuevo.",
39
21
  player: "Área del juego DOOM",
40
22
  },
41
23
  };
@@ -43,26 +25,17 @@ const COPY = {
43
25
  const STYLE = `
44
26
  :root { color-scheme: dark; }
45
27
  * { box-sizing: border-box; }
46
- body { margin: 0; background: #101018; color: #f4f4f7; }
47
- #doom-example { max-width: 1100px; margin: auto; padding: clamp(20px, 4vw, 40px); font-family: system-ui, sans-serif; line-height: 1.6; }
48
- #doom-example h1 { margin: 0 0 12px; color: #fff; font-size: clamp(26px, 4vw, 38px); line-height: 1.2; font-weight: 750; }
49
- #doom-example p { margin: 12px 0; }
50
- #doom-example output { display: block; margin: 12px 0; }
51
- #doom-example .description { max-width: 75ch; color: #d7d7e4; }
52
- #doom-example .controls { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 24px 0 12px; }
53
- #doom-example button { border: 1px solid #fc946d; border-radius: 10px; background: #f69c76; color: #20130e; padding: 12px 22px; font: inherit; font-weight: 700; cursor: pointer; }
54
- #doom-example button:hover { background: #ffb494; }
55
- #doom-example button:disabled { cursor: wait; opacity: 0.7; }
56
- #doom-example a { color: #b8caff; text-decoration: underline; text-underline-offset: 3px; }
28
+ html, body, #doom-example, #doom-player { width: 100%; height: 100%; margin: 0; }
29
+ body { background: #000; color: #f4f4f7; }
30
+ #doom-example { position: relative; font-family: system-ui, sans-serif; }
31
+ #doom-player { min-height: 360px; }
32
+ #doom-status { position: absolute; inset: 0; z-index: 1; padding: 24px; background: #101018; line-height: 1.6; }
57
33
  #doom-example :focus-visible { outline: 3px solid #b8caff; outline-offset: 4px; }
58
- #doom-example .notice { color: #b9b9cb; font-size: 0.9rem; }
59
- #doom-example #doom-player { width: 100%; height: clamp(360px, 65vw, 640px); margin-top: 20px; border: 1px solid #383847; border-radius: 12px; overflow: hidden; background: #000; }
60
34
  #doom-example [hidden] { display: none; }
61
35
  `;
62
36
 
63
37
  const SCRIPT = `
64
38
  (() => {
65
- const button = document.getElementById("doom-load");
66
39
  const status = document.getElementById("doom-status");
67
40
  const player = document.getElementById("doom-player");
68
41
  const baseUrl = ${JSON.stringify(JSDOS_BASE_URL)};
@@ -77,9 +50,7 @@ const SCRIPT = `
77
50
  });
78
51
  }
79
52
 
80
- async function startGame() {
81
- button.disabled = true;
82
- status.textContent = status.dataset.loading;
53
+ async function loadPlayer() {
83
54
  const stylesheet = document.createElement("link");
84
55
  stylesheet.rel = "stylesheet";
85
56
  stylesheet.href = baseUrl + "js-dos.css";
@@ -88,30 +59,26 @@ const SCRIPT = `
88
59
  try {
89
60
  await Promise.all([loadResource(stylesheet), loadResource(script)]);
90
61
  if (typeof window.Dos !== "function") throw new Error("Player API is unavailable");
91
- player.hidden = false;
92
62
  game = window.Dos(player, {
93
63
  url: bundleUrl,
94
64
  pathPrefix: baseUrl + "emulators/",
95
- autoStart: true,
65
+ autoStart: false,
66
+ kiosk: true,
96
67
  mouseCapture: false,
97
68
  theme: "dark",
98
69
  lang: "en",
99
- onEvent(event) {
100
- if (event === "ci-ready") status.textContent = status.dataset.ready;
101
- },
102
70
  });
103
- button.hidden = true;
104
- player.focus();
71
+ game.setNoCloud(true);
105
72
  } catch (error) {
106
73
  stylesheet.remove();
107
74
  script.remove();
108
75
  status.textContent = status.dataset.error;
109
- button.disabled = false;
76
+ status.hidden = false;
110
77
  console.error("DOOM player failed to load", error);
111
78
  }
112
79
  }
113
80
 
114
- button.addEventListener("click", startGame);
81
+ void loadPlayer();
115
82
  window.addEventListener("pagehide", () => {
116
83
  game?.stop().catch((error) => console.error("DOOM player failed to stop", error));
117
84
  }, { once: true });
@@ -131,16 +98,8 @@ function buildDoomHtml(language) {
131
98
  </head>
132
99
  <body>
133
100
  <main id="doom-example">
134
- <h1>${copy.title}</h1>
135
- <p class="description">${copy.description}</p>
136
- <div class="controls">
137
- <button id="doom-load" type="button">${copy.play}</button>
138
- <a href="https://dos.zone/doom-dec-1993/" target="_blank" rel="noopener noreferrer">${copy.source}</a>
139
- </div>
140
- <output id="doom-status" data-loading="${copy.loading}" data-ready="${copy.ready}" data-error="${copy.error}"></output>
141
- <div id="doom-player" tabindex="-1" aria-label="${copy.player}" hidden></div>
142
- <p>${copy.instructions}</p>
143
- <p class="notice">${copy.notice}</p>
101
+ <output id="doom-status" data-error="${copy.error}" hidden></output>
102
+ <div id="doom-player" tabindex="-1" aria-label="${copy.player}"></div>
144
103
  </main>
145
104
  <script>${SCRIPT}</script>
146
105
  </body>
@@ -10,8 +10,8 @@ Record the deployed commit, CLI version and workflow revision. Run \`git status
10
10
  For a reproducible comparison, invoke the target package explicitly:
11
11
 
12
12
  \`\`\`sh
13
- npx --yes @gitpagedocs/cli@0.0.10 version
14
- npx --yes @gitpagedocs/cli@0.0.10 --no-interactive --owner YOUR_USER --repo YOUR_REPOSITORY --output gitpagedocs-candidate
13
+ npx --yes @gitpagedocs/cli@0.0.11 version
14
+ npx --yes @gitpagedocs/cli@0.0.11 --no-interactive --owner YOUR_USER --repo YOUR_REPOSITORY --output gitpagedocs-candidate
15
15
  git diff --no-index -- gitpagedocs gitpagedocs-candidate
16
16
  \`\`\`
17
17
 
@@ -10,8 +10,8 @@ Anota el commit publicado, la versión de la CLI y la revisión del workflow. Ej
10
10
  Para comparar de forma reproducible, indica el paquete exacto:
11
11
 
12
12
  \`\`\`sh
13
- npx --yes @gitpagedocs/cli@0.0.10 version
14
- npx --yes @gitpagedocs/cli@0.0.10 --no-interactive --owner TU_USUARIO --repo TU_REPOSITORIO --output gitpagedocs-candidate
13
+ npx --yes @gitpagedocs/cli@0.0.11 version
14
+ npx --yes @gitpagedocs/cli@0.0.11 --no-interactive --owner TU_USUARIO --repo TU_REPOSITORIO --output gitpagedocs-candidate
15
15
  git diff --no-index -- gitpagedocs gitpagedocs-candidate
16
16
  \`\`\`
17
17
 
@@ -27,13 +27,13 @@ El formato compacto \`site.icons.defaults\` comparte valores entre iconos, y cad
27
27
 
28
28
  La apertura de PDF ahora obtiene bytes validados y abre un Blob \`application/pdf\` en otra pestaña. Los servidores externos deben permitir CORS incluso con la vista previa desactivada. Revisa las tres acciones por separado, comprueba el permiso de ventanas emergentes y conserva los errores traducidos. Las preferencias de PDF del navegador siguen aplicándose.
29
29
 
30
- ## Valida y publica el resultado revisado
30
+ ## Valida y pública el resultado revisado
31
31
 
32
- En este repositorio del runtime, cambia las fuentes de generación antes de compilar: el build vuelve a generar la documentación. Ejecuta \`pnpm run typecheck\`, \`pnpm run lint\`, \`pnpm exec vitest run\`, \`pnpm run smoke:all\` y \`pnpm run build\`. Ejecuta \`pnpm run test:e2e\` con \`PORT=3100\` establecido en el shell. Un repositorio consumidor necesita sus propias comprobaciones equivalentes.
32
+ En este repositorio del runtime, cambia las fuentes de generación antes de compilar: el build vuelve a generar la documentación. Ejecuta \`pnpm run typecheck\`, \`pnpm run lint\`, \`pnpm exec vitest run\`, \`pnpm run smoke:all\` y \`pnpm run build\`. Ejecuta \`pnpm run test:e2e\` con \`PORT=3100\` establecido en el shell. Un repositorio consumidor necesita sus propias comprobaciónes equivalentes.
33
33
 
34
34
  Prueba todas las versiones e idiomas conservados, enlaces directos, menús anidados, iconos/texto, acciones PDF y autorización. Comprueba la exportación bajo la subruta real de Pages. Crea el commit revisado y envíalo mediante el workflow existente. El comando inicial \`pages deploy\` genera archivos, crea un commit y hace push; no lo repitas sin revisar sobre documentación personalizada.
35
35
 
36
- Registra el commit publicado cuando Actions termine correctamente. Si falla la comprobación, revierte el commit específico con \`git revert COMMIT_DE_ACTUALIZACION\`, restaura la versión anterior del runtime cuando corresponda, envía y ejecuta de nuevo el despliegue. Confirma el contenido restaurado en la URL pública; revertir por sí solo no publica el sitio.
36
+ Registra el commit publicado cuando Actions termine correctamente. Si falla la comprobación, revierte el commit específico con \`git revert COMMIT_DE_ACTUALIZACION\`, restaura la versión anterior del runtime cuando corresponda, envía y ejecuta de nuevo el despliegue. Confirma el contenido restaurado en la URL pública; revertir por sí solo no pública el sitio.
37
37
  `,
38
38
  troubleshooting: `# Diagnosticar problemas de documentación
39
39
 
@@ -10,8 +10,8 @@ Anote o commit publicado, a versão da CLI e a revisão do workflow. Execute \`g
10
10
  Para uma comparação reproduzível, invoque explicitamente o pacote desejado:
11
11
 
12
12
  \`\`\`sh
13
- npx --yes @gitpagedocs/cli@0.0.10 version
14
- npx --yes @gitpagedocs/cli@0.0.10 --no-interactive --owner SEU_USUARIO --repo SEU_REPOSITORIO --output gitpagedocs-candidate
13
+ npx --yes @gitpagedocs/cli@0.0.11 version
14
+ npx --yes @gitpagedocs/cli@0.0.11 --no-interactive --owner SEU_USUARIO --repo SEU_REPOSITORIO --output gitpagedocs-candidate
15
15
  git diff --no-index -- gitpagedocs gitpagedocs-candidate
16
16
  \`\`\`
17
17
 
@@ -33,7 +33,7 @@ Neste repositório de runtime, altere as fontes de geração antes de compilar:
33
33
 
34
34
  Teste todas as versões e idiomas preservados, links diretos, menus aninhados, ícones/texto, ações de PDF e autorização. Confira a exportação no subcaminho real do Pages. Faça commit dos arquivos revisados e envie pelo workflow existente. O comando inicial \`pages deploy\` gera arquivos, cria commit e faz push; não o repita sem revisão sobre documentação personalizada.
35
35
 
36
- Registre o commit publicado após o sucesso no Actions. Se a verificação falhar, reverta o commit específico com \`git revert COMMIT_DA_ATUALIZACAO\`, restaure a versão anterior do runtime quando aplicável, envie e execute a publicação novamente. Confirme o conteúdo restaurado na URL pública; o revert sozinho não publica o site.
36
+ Registre o commit publicado após o sucesso no Actions. Se a verificação falhar, reverta o commit específico com \`git revert COMMIT_DA_ATUALIZACAO\`, restaure a versão anterior do runtime quando aplicável, envie e execute a publicação novamente. Confirme o conteúdo restaurado na URL pública; o revert sozinho não pública o site.
37
37
  `,
38
38
  troubleshooting: `# Diagnosticar problemas na documentação
39
39
 
@@ -0,0 +1,115 @@
1
+ export const overviewsEn = {
2
+ guides: `# Guides
3
+
4
+ Choose a route through the documentation according to what you need to accomplish. This page is also the destination of the Guides menu item: selecting its title opens this document, while its separate arrow expands or collapses the submenus.
5
+
6
+ ## Choose your next step
7
+
8
+ - **Configure your site** connects root settings, version routes, themes and navigation. Start here when adapting the generated scaffold to your repository.
9
+ - **Read and explore** explains focus mode, browser narration, PDF documents and interactive HTML.
10
+ - **Automate and integrate** covers CLI commands, the MCP server and route authorization.
11
+
12
+ ## Move through a section
13
+
14
+ Parent entries can contain both a localized \`path-click\` and \`submenus\`. Their children keep their own destinations. The breadcrumb follows the same hierarchy: an ancestor with an available document is clickable, and the current page marks your position. For example, Guides → Configure your site → Configuration lets you return to either overview without losing the menu structure.
15
+ `,
16
+ configureYourSite: `# Configure your site
17
+
18
+ Separate site-wide presentation from the content of a documentation version. The root \`gitpagedocs/config.json\` selects languages, themes and reading controls. The version configuration defines routes, their language-specific files and the menu tree.
19
+
20
+ ## Configure in a practical order
21
+
22
+ 1. Read **Configuration** to locate the setting you need and its default.
23
+ 2. Use **Configuration recipes** for complete JSON examples and a multilingual starter structure.
24
+ 3. Choose **Themes and layouts** for visual tokens and template changes.
25
+ 4. Read **Navigation and nested menus** to connect routes, parent documents, submenus and breadcrumbs.
26
+
27
+ ## Check the result
28
+
29
+ Keep an existing file for every enabled language and menu destination. A title alone does not create a document. Give a parent its own Markdown path when it needs an introduction, and keep its children in \`submenus\`. Validate one language first, then check the others, the flat-menu setting and a direct link to a nested page. Preserve repository-specific configuration when regenerating examples.
30
+ `,
31
+ readAndExplore: `# Read and explore
32
+
33
+ Choose a reading surface that matches the document. Markdown supports headings, links and the table of contents; PDF uses the browser's native viewer; HTML can host a trusted interactive demonstration. All remain reachable through the same documentation menu.
34
+
35
+ ## Reading options
36
+
37
+ - **Focus mode** keeps Markdown in a dialog with copy/download and first, previous, next and last navigation for documents and sections.
38
+ - **Accessibility and narration** explains voice selection, playback controls and browser support.
39
+ - **PDF documents** covers previews, downloads, opening a new tab and external-host CORS requirements.
40
+ - **HTML containers** explains local files, hosted pages and the DOOM example.
41
+
42
+ ## Keep control of playback
43
+
44
+ Narration starts only when requested. Audible media coordinates with narration through \`site.mediaExclusivePlayback\`; native browser voices and external players depend on their providers. For the HTML game, use its own Play control. Parent documents such as this one also participate in document navigation when their Markdown is available and access is allowed.
45
+ `,
46
+ automateAndIntegrate: `# Automate and integrate
47
+
48
+ Use automation for repeatable tasks, with the repository as the source of truth. The CLI generates configuration and documentation files. The MCP server exposes project operations to an MCP client. Route authorization governs the viewer's access experience.
49
+
50
+ ## Select the appropriate interface
51
+
52
+ - **CLI reference** lists installation, commands, flags and which operations write or publish files.
53
+ - **MCP server** describes stdio setup, every tool and resource, provider variables and filesystem boundaries.
54
+ - **Authorized routes** explains keys, roles and external identity providers.
55
+
56
+ ## Review before publishing
57
+
58
+ Keep credentials in the intended environment or credential storage, never in generated configuration. Inspect changed files before committing and validate paths for the selected version and language. Public static files remain accessible from their hosting URLs even when the menu hides them. Start with informational commands and explicit output directories when comparing a generated candidate with an existing site.
59
+ `,
60
+ operationsAndDevelopment: `# Operations and development
61
+
62
+ Maintaining a documentation site involves both its published content and the runtime that displays it. Choose the branch below that matches the change; a content update does not always require changing the frontend, and a viewer fix should not rewrite historical documents unnecessarily.
63
+
64
+ ## Two paths through the project
65
+
66
+ - **Ship and maintain** groups deployment, migration, troubleshooting and frequently asked questions. Use it to prepare an upgrade or investigate a published-site failure.
67
+ - **Develop the project** groups architecture, contributing/testing and feature references. Use it to locate the correct source module and its validation boundary.
68
+
69
+ ## Keep releases traceable
70
+
71
+ Record the intended version, review generated changes and preserve documents used by existing links. Validate local behavior and the deployed base path separately. When an external player, browser voice or hosting policy changes, distinguish that dependency from repository behavior before modifying the implementation. The child guides provide the concrete commands and checks for each task.
72
+ `,
73
+ shipAndMaintain: `# Ship and maintain
74
+
75
+ Treat publication as a verified change to a specific version. Build and inspect the site before relying on a successful workflow status; a deployed page can still reference the wrong path or an unavailable external resource.
76
+
77
+ ## Before and after deployment
78
+
79
+ 1. Read **Deployment** for local runtime, GitHub Pages paths and workflow setup.
80
+ 2. Use **Migration and compatibility** to compare an upgrade while preserving custom content and supported historical configuration.
81
+ 3. Follow **Troubleshooting** when a document, PDF, narration control or integration behaves differently across environments.
82
+ 4. Check **FAQ** for concise answers to common configuration questions.
83
+
84
+ ## Verify a useful sample
85
+
86
+ Open a nested Markdown page directly, switch languages, follow its breadcrumb and test enabled PDF actions. Confirm the deployed commit and package version. Keep a recoverable commit for upgrades and verify the public URL after a rollback. Do not regenerate a customized repository merely to retry a failed deployment without first reviewing what the generator will replace.
87
+ `,
88
+ developTheProject: `# Develop the project
89
+
90
+ Start with the module that owns the behavior you want to change. The frontend uses Feature-Sliced Design; the CLI owns scaffold templates; shared tools provide configuration and documentation services; the MCP package exposes those services through its protocol.
91
+
92
+ ## Locate the source and test boundary
93
+
94
+ - **Architecture** maps packages, responsibilities and data flow.
95
+ - **Contributing and testing** identifies authoritative templates, generated outputs and the validation commands.
96
+ - **Functionalities** provides a broad reference for existing capabilities and configuration.
97
+
98
+ ## Make a reviewable change
99
+
100
+ Describe the observable behavior, reproduce it through a public interface and update the source before regenerating artifacts. Keep tests about rendered controls, returned configuration or written files instead of private helpers. Review translations and accessibility when changing a user-facing control. Run the checks appropriate to the affected packages, then inspect the generated diff before committing. Existing version directories should remain intact unless the change explicitly requires updating their content.
101
+ `,
102
+ gitAndGitHub: `# Git and GitHub
103
+
104
+ Version control connects the documentation files, review history and deployment workflow. These examples introduce the repository practices used throughout the project; they complement the GitPageDocs configuration guides rather than replace them.
105
+
106
+ ## Start with the appropriate guide
107
+
108
+ - **Introduction to Git** explains commits, branches and the basic collaboration model, with an accompanying video example.
109
+ - **GitHub Issues and Projects** shows how to record work and organize its progress.
110
+
111
+ ## Apply the workflow to documentation
112
+
113
+ Keep related source and generated changes together in a reviewed commit. Use a branch for a configuration migration, inspect differences before publishing and record the commit deployed by Actions. Describe a documentation defect with its version, language, URL and expected result so another contributor can reproduce it. Before sharing logs or examples, remove credentials and private content; a public repository and its Pages site expose committed files.
114
+ `,
115
+ };
@@ -0,0 +1,115 @@
1
+ export const overviewsEs = {
2
+ guides: `# Guías
3
+
4
+ Elige un recorrido por la documentación según lo que necesites hacer. Esta página también es el destino del elemento Guías: pulsar su título abre el documento; la flecha separada expande o contrae los submenús.
5
+
6
+ ## Elige el siguiente paso
7
+
8
+ - **Configura tu sitio** conecta ajustes globales, rutas de versión, temas y navegación. Empieza aquí para adaptar el scaffold a tu repositorio.
9
+ - **Lee y explora** explica modo foco, narración del navegador, documentos PDF y HTML interactivo.
10
+ - **Automatiza e integra** reúne comandos CLI, servidor MCP y autorización de rutas.
11
+
12
+ ## Recorre una sección
13
+
14
+ Un elemento padre puede tener \`path-click\` traducido y \`submenus\` a la vez. Sus hijos conservan destinos propios. El breadcrumb sigue la misma jerarquía: un ancestro con documento disponible es navegable y la página actual indica tu posición. Por ejemplo, Guías → Configura tu sitio → Configuración permite volver a cualquier introducción sin perder la estructura del menú.
15
+ `,
16
+ configureYourSite: `# Configura tu sitio
17
+
18
+ Separa la presentación global del contenido de cada versión. El archivo raíz \`gitpagedocs/config.json\` selecciona idiomas, temas y controles de lectura. La configuración de la versión define rutas, archivos por idioma y el árbol de menús.
19
+
20
+ ## Configura en un orden práctico
21
+
22
+ 1. Lee **Configuración** para localizar el ajuste y su valor predeterminado.
23
+ 2. Usa **Recetas de configuración** para ejemplos JSON completos y una estructura multilingüe inicial.
24
+ 3. Elige **Temas y diseños** para tokens visuales y cambios de plantillas.
25
+ 4. Lee **Navegación y submenús** para conectar rutas, documentos de los padres, submenús y breadcrumbs.
26
+
27
+ ## Comprueba el resultado
28
+
29
+ Mantén un archivo existente para cada idioma habilitado y destino. Un título por sí solo no crea un documento. Asigna al padre su propia ruta Markdown cuando necesite una introducción y conserva sus hijos en \`submenus\`. Valida primero un idioma; después comprueba los demás, el menú plano y un enlace directo a una página anidada. Conserva los ajustes propios del repositorio al regenerar ejemplos.
30
+ `,
31
+ readAndExplore: `# Lee y explora
32
+
33
+ Elige una forma de lectura adecuada al documento. Markdown ofrece encabezados, enlaces e índice; PDF utiliza el visor nativo; HTML puede alojar una demostración interactiva de confianza. Todos siguen accesibles desde el mismo menú.
34
+
35
+ ## Opciones de lectura
36
+
37
+ - **Modo foco** mantiene Markdown en un diálogo con copia/descarga y navegación al primer, anterior, siguiente y último documento o sección.
38
+ - **Accesibilidad y narración** explica voces, controles y compatibilidad del navegador.
39
+ - **Documentos PDF** cubre vista previa, descarga, nueva pestaña y requisitos CORS del alojamiento externo.
40
+ - **Contenedores HTML** explica archivos locales, páginas alojadas y el ejemplo DOOM.
41
+
42
+ ## Controla la reproducción
43
+
44
+ La narración comienza solo cuando se solicita. El contenido audible se coordina mediante \`site.mediaExclusivePlayback\`; voces nativas y reproductores externos dependen de sus proveedores. En el juego HTML, usa el control Play del reproductor. Los documentos de elementos padre, como este, también participan en la navegación entre documentos cuando su Markdown está disponible y el acceso está permitido.
45
+ `,
46
+ automateAndIntegrate: `# Automatiza e integra
47
+
48
+ Usa automatización para tareas repetibles, manteniendo el repositorio como fuente de verdad. La CLI genera configuración y documentación. El servidor MCP ofrece operaciones del proyecto a un cliente MCP. La autorización de rutas gobierna la experiencia de acceso del visor.
49
+
50
+ ## Elige la interfaz adecuada
51
+
52
+ - **Referencia de la CLI** enumera instalación, comandos, opciones y operaciones que escriben o publican archivos.
53
+ - **Servidor MCP** describe stdio, todas las tools y resources, variables de proveedores y límites del sistema de archivos.
54
+ - **Rutas autorizadas** explica claves, roles y proveedores externos de identidad.
55
+
56
+ ## Revisa antes de publicar
57
+
58
+ Mantén credenciales en el entorno o almacenamiento apropiado, nunca en configuración generada. Inspecciona los cambios antes del commit y valida rutas de la versión e idioma elegidos. Los archivos estáticos públicos siguen accesibles por sus URLs aunque el menú los oculte. Empieza por comandos informativos y directorios de salida explícitos al comparar una generación candidata con un sitio existente.
59
+ `,
60
+ operationsAndDevelopment: `# Operación y desarrollo
61
+
62
+ Mantener un sitio de documentación implica su contenido publicado y el runtime que lo muestra. Elige el recorrido relacionado con el cambio: actualizar contenido no siempre requiere modificar el frontend, y corregir el visor no debería reescribir documentos históricos sin necesidad.
63
+
64
+ ## Dos recorridos por el proyecto
65
+
66
+ - **Pública y mantén** agrupa publicación, migración, diagnóstico y preguntas frecuentes. Úsalo para preparar una actualización o investigar un fallo publicado.
67
+ - **Desarrolla el proyecto** agrupa arquitectura, contribución/pruebas y funcionalidades. Úsalo para localizar la fuente y la frontera de validación.
68
+
69
+ ## Mantén publicaciones rastreables
70
+
71
+ Registra la versión prevista, revisa archivos generados y conserva documentos usados por enlaces existentes. Valida por separado el comportamiento local y la ruta publicada. Cuando cambie un reproductor externo, una voz o una política de alojamiento, distingue esa dependencia del comportamiento del repositorio antes de modificar la implementación. Las guías hijas ofrecen comandos y comprobaciónes concretos para cada tarea.
72
+ `,
73
+ shipAndMaintain: `# Pública y mantén
74
+
75
+ Trata la publicación como un cambio validado de una versión concreta. Genera e inspecciona el sitio antes de confiar únicamente en el éxito del workflow: una página publicada aún puede apuntar a una ruta incorrecta o a un recurso externo no disponible.
76
+
77
+ ## Antes y después de publicar
78
+
79
+ 1. Lee **Publicación** para ejecución local, rutas de GitHub Pages y configuración del workflow.
80
+ 2. Usa **Migración y compatibilidad** para comparar actualizaciones conservando contenido propio y configuración histórica compatible.
81
+ 3. Sigue **Solución de problemas** cuando documentos, PDF, narración o integraciones varíen entre entornos.
82
+ 4. Consulta **Preguntas frecuentes** para respuestas breves sobre ajustes habituales.
83
+
84
+ ## Verifica una muestra útil
85
+
86
+ Abre directamente una página Markdown anidada, cambia el idioma, sigue su breadcrumb y prueba las acciones PDF habilitadas. Confirma el commit publicado y la versión del paquete. Conserva un commit recuperable para actualizaciones y verifica la URL pública después de un rollback. No regeneres un repositorio personalizado solo para repetir un despliegue sin revisar qué se sustituirá.
87
+ `,
88
+ developTheProject: `# Desarrolla el proyecto
89
+
90
+ Empieza por el módulo responsable del comportamiento que quieres cambiar. El frontend sigue Feature-Sliced Design; la CLI contiene las plantillas del scaffold; tools proporciona servicios compartidos de configuración y documentación; MCP expone esos servicios mediante su protocolo.
91
+
92
+ ## Localiza la fuente y la frontera de prueba
93
+
94
+ - **Arquitectura** describe paquetes, responsabilidades y flujo de datos.
95
+ - **Contribución y pruebas** identifica plantillas fuente, salidas generadas y comandos de validación.
96
+ - **Funcionalidades** ofrece una referencia amplia de capacidades y ajustes existentes.
97
+
98
+ ## Produce un cambio revisable
99
+
100
+ Describe el comportamiento observable, reprodúcelo mediante la interfaz pública y actualiza la fuente antes de generar artefactos. Prueba controles renderizados, configuraciones devueltas o archivos escritos, en lugar de helpers privados. Revisa traducciones y accesibilidad al cambiar controles visibles. Ejecuta las comprobaciónes de los paquetes afectados e inspecciona el diff generado antes del commit. Conserva directorios de versiones existentes salvo que el cambio requiera explícitamente actualizar su contenido.
101
+ `,
102
+ gitAndGitHub: `# Git y GitHub
103
+
104
+ El control de versiones conecta archivos de documentación, historial de revisión y despliegue. Estos ejemplos presentan prácticas del repositorio usadas en el proyecto y complementan las guías de configuración de GitPageDocs.
105
+
106
+ ## Empieza por la guía adecuada
107
+
108
+ - **Introducción a Git** explica commits, branches y colaboración básica, con un ejemplo de vídeo.
109
+ - **GitHub Issues y Projects** muestra cómo registrar trabajo y organizar su avance.
110
+
111
+ ## Aplica el flujo a la documentación
112
+
113
+ Mantén cambios relacionados de fuente y archivos generados en el mismo commit revisado. Usa una branch para migrar configuración, inspecciona diferencias antes de publicar y registra el commit desplegado por Actions. Describe un defecto con versión, idioma, URL y resultado esperado para que otro colaborador pueda reproducirlo. Antes de compartir logs o ejemplos, elimina credenciales y contenido privado: un repositorio público y su sitio Pages exponen los archivos versionados.
114
+ `,
115
+ };
@@ -0,0 +1,115 @@
1
+ export const overviewsPt = {
2
+ guides: `# Guias
3
+
4
+ Escolha um caminho pela documentação conforme o que precisa realizar. Esta página também é o destino do item Guias no menu: clicar no título abre o documento; a seta separada expande ou recolhe os submenus.
5
+
6
+ ## Escolha o próximo passo
7
+
8
+ - **Configure seu site** conecta opções globais, rotas de versão, temas e navegação. Comece aqui para adaptar o scaffold ao seu repositório.
9
+ - **Leia e explore** explica modo foco, narração do navegador, documentos PDF e HTML interativo.
10
+ - **Automatize e integre** reúne comandos da CLI, servidor MCP e autorização de rotas.
11
+
12
+ ## Navegue pela seção
13
+
14
+ Um item pai pode ter \`path-click\` traduzido e \`submenus\` ao mesmo tempo. Os filhos mantêm seus próprios destinos. O breadcrumb segue a mesma hierarquia: um ancestral com documento disponível pode ser aberto, e a página atual indica sua posição. Por exemplo, Guias → Configure seu site → Configuração permite voltar a qualquer introdução sem perder a estrutura do menu.
15
+ `,
16
+ configureYourSite: `# Configure seu site
17
+
18
+ Separe a apresentação global do conteúdo de cada versão da documentação. O arquivo raiz \`gitpagedocs/config.json\` seleciona idiomas, temas e controles de leitura. A configuração da versão define rotas, arquivos por idioma e a árvore de menus.
19
+
20
+ ## Configure em uma ordem prática
21
+
22
+ 1. Leia **Configuração** para localizar a opção desejada e seu padrão.
23
+ 2. Use **Receitas de configuração** para exemplos JSON completos e uma estrutura multilíngue inicial.
24
+ 3. Escolha **Temas e layouts** para tokens visuais e alterações de templates.
25
+ 4. Leia **Navegação e submenus** para conectar rotas, documentos dos pais, submenus e breadcrumbs.
26
+
27
+ ## Confira o resultado
28
+
29
+ Mantenha um arquivo existente para cada idioma habilitado e destino do menu. Apenas um título não cria um documento. Dê ao pai seu próprio caminho Markdown quando precisar de uma introdução e preserve os filhos em \`submenus\`. Valide um idioma primeiro; depois confira os demais, o menu plano e um link direto para uma página aninhada. Preserve as configurações específicas do repositório ao gerar exemplos novamente.
30
+ `,
31
+ readAndExplore: `# Leia e explore
32
+
33
+ Escolha uma forma de leitura adequada ao documento. Markdown oferece títulos, links e sumário; PDF usa o visualizador nativo do navegador; HTML pode hospedar uma demonstração interativa confiável. Todos permanecem acessíveis pelo mesmo menu da documentação.
34
+
35
+ ## Opções de leitura
36
+
37
+ - **Modo foco** mantém o Markdown em um diálogo com cópia/download e navegação para primeiro, anterior, próximo e último documento ou seção.
38
+ - **Acessibilidade e narração** explica escolha de voz, controles e suporte do navegador.
39
+ - **Documentos PDF** cobre prévia, download, nova aba e exigências de CORS na hospedagem externa.
40
+ - **Containers HTML** explica arquivos locais, páginas hospedadas e o exemplo DOOM.
41
+
42
+ ## Controle a reprodução
43
+
44
+ A narração começa somente quando solicitada. Mídias audíveis se coordenam com ela por \`site.mediaExclusivePlayback\`; vozes nativas e players externos dependem de seus provedores. No jogo HTML, use o controle Play do próprio player. Documentos de itens pai, como este, também participam da navegação entre documentos quando o Markdown está disponível e o acesso é permitido.
45
+ `,
46
+ automateAndIntegrate: `# Automatize e integre
47
+
48
+ Use automação para tarefas repetíveis, mantendo o repositório como fonte de verdade. A CLI gera arquivos de configuração e documentação. O servidor MCP oferece operações do projeto a um cliente MCP. A autorização de rotas governa a experiência de acesso no visualizador.
49
+
50
+ ## Escolha a interface adequada
51
+
52
+ - **Referência da CLI** lista instalação, comandos, opções e operações que gravam ou publicam arquivos.
53
+ - **Servidor MCP** descreve configuração stdio, todas as tools e resources, variáveis de provedores e limites do sistema de arquivos.
54
+ - **Rotas autorizadas** explica chaves, roles e provedores externos de identidade.
55
+
56
+ ## Revise antes de publicar
57
+
58
+ Mantenha credenciais no ambiente ou armazenamento apropriado, nunca na configuração gerada. Inspecione os arquivos alterados antes do commit e valide caminhos da versão e do idioma escolhidos. Arquivos estáticos públicos continuam acessíveis por suas URLs mesmo quando o menu os esconde. Comece por comandos informativos e diretórios de saída explícitos ao comparar uma geração candidata com um site existente.
59
+ `,
60
+ operationsAndDevelopment: `# Operação e desenvolvimento
61
+
62
+ Manter um site de documentação envolve seu conteúdo publicado e o runtime que o apresenta. Escolha abaixo o caminho relacionado à mudança: atualizar conteúdo nem sempre exige alterar o frontend, e corrigir o visualizador não deve reescrever documentos históricos sem necessidade.
63
+
64
+ ## Dois caminhos pelo projeto
65
+
66
+ - **Publique e mantenha** reúne publicação, migração, diagnóstico e perguntas frequentes. Use para preparar uma atualização ou investigar uma falha do site publicado.
67
+ - **Desenvolva o projeto** reúne arquitetura, contribuição/testes e referência de funcionalidades. Use para localizar a fonte correta e a fronteira de validação.
68
+
69
+ ## Mantenha publicações rastreáveis
70
+
71
+ Registre a versão pretendida, revise os arquivos gerados e preserve documentos usados por links existentes. Valide separadamente o comportamento local e o caminho de publicação. Quando um player externo, voz do navegador ou política de hospedagem mudar, diferencie essa dependência do comportamento do repositório antes de alterar a implementação. Os guias filhos apresentam comandos e verificações para cada tarefa.
72
+ `,
73
+ shipAndMaintain: `# Publique e mantenha
74
+
75
+ Trate a publicação como uma mudança validada em uma versão específica. Gere e inspecione o site antes de confiar apenas no sucesso do workflow; uma página publicada ainda pode apontar para um caminho incorreto ou recurso externo indisponível.
76
+
77
+ ## Antes e depois da publicação
78
+
79
+ 1. Leia **Publicação** para execução local, caminhos do GitHub Pages e configuração do workflow.
80
+ 2. Use **Migração e compatibilidade** para comparar atualizações preservando conteúdo próprio e configurações históricas suportadas.
81
+ 3. Siga **Solução de problemas** quando documentos, PDFs, narração ou integrações variarem entre ambientes.
82
+ 4. Consulte **Perguntas frequentes** para respostas curtas sobre configurações comuns.
83
+
84
+ ## Verifique uma amostra útil
85
+
86
+ Abra diretamente uma página Markdown aninhada, troque o idioma, siga seu breadcrumb e teste as ações de PDF habilitadas. Confirme o commit publicado e a versão do pacote. Tenha um commit recuperável para atualizações e confira a URL pública após um rollback. Não gere novamente um repositório personalizado apenas para repetir um deploy sem revisar o que será substituído.
87
+ `,
88
+ developTheProject: `# Desenvolva o projeto
89
+
90
+ Comece pelo módulo responsável pelo comportamento que deseja alterar. O frontend segue Feature-Sliced Design; a CLI possui os templates do scaffold; tools fornece serviços compartilhados de configuração e documentação; MCP expõe esses serviços por seu protocolo.
91
+
92
+ ## Localize a fonte e a fronteira de teste
93
+
94
+ - **Arquitetura** mapeia pacotes, responsabilidades e fluxo de dados.
95
+ - **Contribuição e testes** identifica templates autorais, saídas geradas e comandos de validação.
96
+ - **Funcionalidades** oferece uma referência ampla das capacidades e configurações existentes.
97
+
98
+ ## Produza uma mudança revisável
99
+
100
+ Descreva o comportamento observável, reproduza-o pela interface pública e atualize a fonte antes de gerar artefatos. Teste controles renderizados, configurações retornadas ou arquivos escritos, em vez de helpers privados. Revise traduções e acessibilidade ao mudar controles visíveis. Execute as verificações adequadas aos pacotes afetados e inspecione o diff gerado antes do commit. Diretórios de versões existentes devem permanecer intactos, salvo quando a mudança exige explicitamente atualizar seu conteúdo.
101
+ `,
102
+ gitAndGitHub: `# Git e GitHub
103
+
104
+ O controle de versão conecta arquivos da documentação, histórico de revisão e publicação. Estes exemplos apresentam práticas do repositório usadas no projeto e complementam os guias de configuração do GitPageDocs.
105
+
106
+ ## Comece pelo guia adequado
107
+
108
+ - **Introdução ao Git** explica commits, branches e colaboração básica, com um exemplo de vídeo.
109
+ - **GitHub Issues e Projects** mostra como registrar trabalho e organizar seu andamento.
110
+
111
+ ## Aplique o fluxo à documentação
112
+
113
+ Mantenha mudanças relacionadas de fonte e arquivos gerados no mesmo commit revisado. Use uma branch para migrar configurações, inspecione diferenças antes de publicar e registre o commit implantado pelo Actions. Descreva um defeito com versão, idioma, URL e resultado esperado para permitir reprodução por outro colaborador. Antes de compartilhar logs ou exemplos, remova credenciais e conteúdo privado: um repositório público e seu Pages expõem os arquivos versionados.
114
+ `,
115
+ };
@@ -3,7 +3,7 @@ import { HTML_ROUTE_JSON, RECIPE_ROOT_JSON, RECIPE_VERSION_JSON } from "./config
3
3
  export const practicalEn = {
4
4
  htmlContainers: `# HTML containers and interactive examples
5
5
 
6
- An HTML route displays a local document or an external web page inside an iframe. Use it for a trusted interactive demonstration that Markdown cannot express. The scaffold includes **DOOM: HTML example**, route 29, with a localized title, description and a button that loads the external game player only when the visitor chooses to play. The game remains hosted by its provider; the npm package contains the HTML wrapper, not the game assets.
6
+ An HTML route displays a local document or an external web page inside an iframe. Use it for a trusted interactive demonstration that Markdown cannot express. The scaffold includes **DOOM: HTML example**, route 29. Its title and description belong to the documentation container; the HTML itself contains only the game player, without repeated headings, instructions or a custom load button. The game remains hosted by its provider; the npm package contains the HTML integration, not the game assets.
7
7
 
8
8
  ## Configure a local HTML route
9
9
 
@@ -13,7 +13,7 @@ Add this route to the version configuration's existing \`routes-html\` array. Ke
13
13
  ${HTML_ROUTE_JSON}
14
14
  \`\`\`
15
15
 
16
- Add a localized item in \`menus-header-html\`. Each \`path-click\` must match its language's route path, such as \`gitpagedocs/docs/versions/0.0.10/en/doom.html\`; do not substitute \`page:29\` for this local HTML path. Menu labels do not create routes. HTML uses the same recursive \`submenus\` structure as other menus.
16
+ Add a localized item in \`menus-header-html\`. Each \`path-click\` must match its language's route path, such as \`gitpagedocs/docs/versions/0.0.11/en/doom.html\`; do not substitute \`page:29\` for this local HTML path. Menu labels do not create routes. HTML uses the same recursive \`submenus\` structure as other menus.
17
17
 
18
18
  ## Size, content and external URLs
19
19
 
@@ -25,7 +25,7 @@ The external host can prevent framing through CSP or X-Frame-Options. Known bloc
25
25
 
26
26
  ## Use and maintain the game example
27
27
 
28
- Select the HTML menu entry, read the provider notice and press the localized load button. Network access is needed; then follow the player's own start and keyboard controls. The wrapper includes a direct provider link if embedding fails. Test keyboard focus, small screens, fullscreen and returning to the documentation. Third-party player availability and browser capabilities can change independently of GitPageDocs.
28
+ Select the HTML menu entry. The player SDK loads when the page opens; use its native Play control to start the game. There is no automatic game start or separate documentation load button. Network access is required. A bootstrap failure displays an error asking you to reload the page; the normal view contains only the player. Test keyboard focus, small screens, fullscreen and returning to the documentation. Third-party player availability and browser capabilities can change independently of GitPageDocs.
29
29
 
30
30
  Review HTML and dependencies before publishing. The current iframe permits scripts and same-origin content, so it is not a security boundary for arbitrary untrusted HTML. Do not put secrets in HTML, URLs or client configuration. Static hosting exposes the files independently of menu visibility or route authorization. For local development and Pages, commit the wrapper alongside its version configuration and validate the generated paths before deployment.
31
31
  `,
@@ -35,7 +35,9 @@ This guide builds a small multilingual documentation site with two Markdown page
35
35
 
36
36
  ## 1. Generate and inspect the scaffold
37
37
 
38
- Run \`npx --yes @gitpagedocs/cli@0.0.10 --no-interactive --owner YOUR_USER --repo YOUR_REPOSITORY\` in a new project directory. In this source repository, \`node cli/index.mjs\` runs the checked-out version. Generation writes configuration and documentation; it does not start the Next.js viewer.
38
+ The scaffold includes versions 0.0.11 and 0.0.10 in the version selector. Both contain the current examples; the package version remains 0.0.11. Their paths and version badges are generated for the selected documentation version. Older existing version folders are not deleted.
39
+
40
+ Run \`npx --yes @gitpagedocs/cli@0.0.11 --no-interactive --owner YOUR_USER --repo YOUR_REPOSITORY\` in a new project directory. In this source repository, \`node cli/index.mjs\` runs the checked-out version. Generation writes configuration and documentation; it does not start the Next.js viewer.
39
41
 
40
42
  Use the following complete JSON as a minimal root-config example in \`gitpagedocs/config.json\`. For an existing site, merge the relevant fields and preserve its repository identity, deployment settings, themes and other versions.
41
43