Skip to content

[WIP - DO NOT MERGE] Add a translation pilot for Brazilian Portuguese, German, French, and Spanish - #4117

Draft
SharpRake wants to merge 3 commits into
mainfrom
i18n-work
Draft

SharpRake wants to merge 3 commits into
mainfrom
i18n-work

Conversation

@SharpRake

@SharpRake SharpRake commented Oct 1, 2026 •

Copy link
Copy Markdown
Collaborator

[ ] Check if this is a typo or other quick fix and ignore the rest :)

Type of change

New Content

  • Adds multilingual support: a language menu on every page, a saved language preference, English fallback for untranslated pages, and a translation notice that flags out-of-date translations
  • Adds a Brazilian Portuguese pilot (/pt-br/, 9 pages) and German, French, and Spanish (/de/, /fr/, /es/, 5 pages each), all machine translated and marked reviewed: false
  • Translates interface text, including the Ask AI widget, through i18n/<lang>.toml
  • Documents the setup and the translation workflow in docs/translations.md

What should this PR do?

Builds a translation pilot for Chainguard Academy in four languages. It isn't ready to merge.

Why are we making this change?

Academy is English-only. This pilot tests how Hugo's multilingual support fits the site, how readers choose a language, and what a translation workflow needs before we commit to translating at scale.

What are the acceptance criteria?

  • English pages render as before, apart from the language menu and hreflang links
  • Translated pages render under their language prefix, and links to untranslated pages fall back to English
  • Before merging: native speakers review each language, the Algolia crawler excludes or facets the translated paths, and the Spanish variant is confirmed (currently neutral international Spanish)

How should this PR be tested?

Any documentation published to Chainguard Academy is reviewed carefully for accuracy. GUI procedures, API commands, and CLI code snippets in a draft are run and tested thoroughly — by both the author and the reviewer — to confirm they work exactly as written. This helps ensure that readers can follow along and get the same results. See the edu repo's README.

  1. Check the preview link and ensure the changes look right
  2. Open any English page and use the language menu in the sidebar to switch languages. Pages without a translation show a "not translated" hint.
  3. Choose a language, then open /get-started/what-is-chainguard/. It should redirect to that language's version. On a page without a translation, such as /chainguard/containers/overview/, the sidebar should show a note that the page isn't translated.
  4. Compare /pt-br/get-started/, /de/get-started/, /fr/get-started/, and /es/get-started/ with the English page, and check that the Ask AI button label fits.

🤖 Generated with Claude Code

@SharpRake
SharpRake requested review from a team as code owners October 1, 2026 23:26
@vercel

vercel Bot commented Oct 1, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
chainguard-docs-preview Ready Ready Preview Oct 15, 2026 6:35am UTC

Request Review

@netlify

netlify Bot commented Oct 1, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for ornate-narwhal-088216 ready!

Name Link
🔨 Latest commit 665fc93
🔍 Latest deploy log https://app.netlify.com/projects/ornate-narwhal-088216/deploys/6ad073fcc806e28b363eae18
😎 Deploy Preview https://deploy-preview-4117--ornate-narwhal-088216.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

SharpRake and others added 3 commits October 14, 2026 23:31
Signed-off-by: Mark Drake <mark@chainguard.dev>
Serve German, French, and Spanish under /de/, /fr/, and /es/, each with
the home page and the four initial Get Started pages, its own interface
strings, and a localized Ask AI widget. The Spanish pages use neutral,
international Spanish until a target variant is chosen. All translations
are machine translated and marked reviewed: false.

Also widen the Portuguese Ask AI button to 7.5rem, and fix three
mistranslations in the Portuguese chainctl guide.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Mark Drake <mark@chainguard.dev>
Carry upstream edits into the translated pages: the new Checks and
Workspaces section and product entries, wording changes from "Chainguard
Containers" to "container images", and the renamed
CHAINGUARD_LEGACY_ALLOWED variable on the FIPS page. Each page's
sourceLastmod now matches its English source.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Mark Drake <mark@chainguard.dev>
@SharpRake SharpRake changed the title [WIP - DO NOT MERGE] Add Brazilian Portuguese translation pilot [WIP - DO NOT MERGE] Add a translation pilot for Brazilian Portuguese, German, French, and Spanish Oct 15, 2026

This branch was successfully deployed

1 active deployment
Preview — 665fc933 Deployed Oct 15, 2026 by vercel[bot]
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.

1 participant