From d07978dfe2b63661f52ab9a93c7a6f3c178d850d Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 16 Jul 2026 15:19:30 +0000 Subject: [PATCH] fix: correct docs issues found in daily content scan - Remove CI-blocked `import Video` statements left in MDX bodies across core, react-core-linter, blog, and devlog (Video is globally registered) - Fix broken/mismatched internal links (node msg(), next getGT(), next DictionaryTranslationOptions prose using `d` instead of `t`) - Add missing `occupation` frontmatter field for authors/jackie.mdx - Add language ids to fenced code blocks missing them (blog/gt-next.mdx) - Fix heading-hierarchy skips in core/locales.mdx (H1->H3, no established site convention here, unlike FAQ pages) - Fix malformed CLI parameter table missing closing pipes (cli/stage.mdx) - Fix invalid JSON trailing comma in a code sample (with-gt-config.mdx) - Fix duplicate list numbering and mis-indented list in devlog entries - Fix incorrect brand/package-name casing ("GT Next" -> `gt-next`, "GT React" -> `gt-react`, "Dev Api Keys" -> "Dev API Keys", "General translation" -> "General Translation", "api key"/"project id" -> "API key"/"project ID") - Fix `Notes` sections using `-` instead of required `*` bullet marker - Fix grammar (article "a" -> "an" before vowel sound, "d" -> "t" typo) - Replace dead `[text](#)` placeholder links with plain bold/code text Left untouched: FAQ pages' H3-only heading pattern (verified as a consistent, intentional site-wide convention across 7+ faqs.mdx files, not a defect), and issues inside Fumadocs auto-generated API stub files (need upstream template/spec fixes, not direct edits). Co-Authored-By: Claude Sonnet 5 Claude-Session: https://claude.ai/code/session_01UtRNKpkDsfeQY1VAhSrXvd --- authors/jackie.mdx | 1 + blog/en-US/gt-next.mdx | 10 +++++----- blog/en-US/i18n-without-translation-files.mdx | 2 -- devlog/en-US/gt-i18n_v0_1_0.mdx | 4 ++-- devlog/en-US/gt-next_v6_2_0.mdx | 4 ++-- devlog/en-US/gt-react_v10_15_0.mdx | 2 -- devlog/en-US/gt-react_v10_19_0.mdx | 2 -- devlog/en-US/react-core-linter_v0_1_0.mdx | 2 -- docs/en-US/cli/stage.mdx | 8 ++++---- docs/en-US/core/index.mdx | 2 -- docs/en-US/core/locales.mdx | 10 +++++----- docs/en-US/key-concepts/dynamic-content.mdx | 2 +- docs/en-US/locadex/auto-merge.mdx | 2 +- docs/en-US/locadex/next.mdx | 2 +- docs/en-US/next/api/components/tx.mdx | 2 +- docs/en-US/next/api/config/with-gt-config.mdx | 4 ++-- docs/en-US/next/api/dictionary/use-translations.mdx | 4 ++-- docs/en-US/next/api/helpers/get-locale.mdx | 2 +- docs/en-US/next/api/strings/tx.mdx | 2 +- .../next/api/types/dictionary-translation-options.mdx | 2 +- .../next/api/types/runtime-translation-options.mdx | 1 + docs/en-US/next/guides/languages.mdx | 2 +- docs/en-US/next/guides/migration.mdx | 4 ++-- docs/en-US/next/index.mdx | 2 +- .../tutorials/examples/currency-converter/preptx.mdx | 2 +- docs/en-US/next/tutorials/examples/next-speedrun.mdx | 6 +++--- docs/en-US/node/guides/strings.mdx | 2 +- docs/en-US/react-core-linter/guides/quickstart.mdx | 2 -- docs/en-US/react-core-linter/index.mdx | 2 -- docs/en-US/react-core-linter/rules/static-string.mdx | 2 +- docs/en-US/react/api/components/gtprovider.mdx | 2 +- docs/en-US/react/api/strings/t-function.mdx | 8 ++++---- docs/en-US/react/tutorials/mini-shop.mdx | 4 ++-- 33 files changed, 48 insertions(+), 60 deletions(-) diff --git a/authors/jackie.mdx b/authors/jackie.mdx index 2ac16548..c99d0722 100644 --- a/authors/jackie.mdx +++ b/authors/jackie.mdx @@ -1,6 +1,7 @@ --- name: Jackie Chen avatar: /static/avatars/jackie.png +occupation: Software Engineer company: General Translation email: jackie@generaltranslation.com twitter: https://x.com/Some_Jackie diff --git a/blog/en-US/gt-next.mdx b/blog/en-US/gt-next.mdx index 4f30479e..3cfe8350 100644 --- a/blog/en-US/gt-next.mdx +++ b/blog/en-US/gt-next.mdx @@ -8,7 +8,7 @@ tags: ['guide', 'internationalization', 'nextjs', 'gt-next'] **Internationalization (i18n) sucks. We're building a Next.js library, gt-next, to make it easier.** Today we're launching it in open beta. -``` copy +```bash copy npm i gt-next ``` @@ -40,9 +40,9 @@ The goal with gt-next is to create an abundance mindset around translations. The - Get an API key 🔐 on our [platform](https://generaltranslation.com) - Read the [docs](https://generaltranslation.com/docs) 📄 -### What you can do with gt-next +## What you can do with gt-next -#### Format variables and plurals +### Format variables and plurals ```javascript copy import { T } from 'gt-next' @@ -67,14 +67,14 @@ export default function Page() { } ``` -#### Use a developer API key to see translations locally +### Use a developer API key to see translations locally ```.env copy GT_API_KEY="gtx-dev-cae62d6fe1e33bda603c9a2926ab0fb8" GT_PROJECT_ID="abcdef12-3456-789a-bcd4-ef123456789a" ``` -#### Support over 100 languages out of the box, with on-demand translation. +### Support over 100 languages out of the box, with on-demand translation. ![landing](/images/blogs/landing.png) diff --git a/blog/en-US/i18n-without-translation-files.mdx b/blog/en-US/i18n-without-translation-files.mdx index 0be9ae2d..d7af7a33 100644 --- a/blog/en-US/i18n-without-translation-files.mdx +++ b/blog/en-US/i18n-without-translation-files.mdx @@ -6,8 +6,6 @@ authors: [jackie] tags: ['guide', 'internationalization', 'nextjs', 'i18n', 'gt-next', 'translation-files', 'developer-experience'] --- -import Video from '@/components/Video'; - Everyone who's internationalized a JavaScript app knows the workflow. You install an i18n library, create an `en.json` file, pull every user-facing string out of your components, assign each one a key, and reference the key where the string used to be. Then you duplicate that JSON file for every language you support. `es.json`, `fr.json`, `ja.json`. At first, it's fine. Thirty strings, three languages, 90 entries. diff --git a/devlog/en-US/gt-i18n_v0_1_0.mdx b/devlog/en-US/gt-i18n_v0_1_0.mdx index 528ab2a2..151a9693 100644 --- a/devlog/en-US/gt-i18n_v0_1_0.mdx +++ b/devlog/en-US/gt-i18n_v0_1_0.mdx @@ -16,8 +16,8 @@ Though `generaltranslation` is also a runtime-agnostic library, it is—by desig ## What's Included -- **[`msg()`](#)** - String registration and variable interpolation -- **[`mFallback()`](#)** and **[`gtFallback()`](#)** - Migration helpers for incremental adoption +- **`msg()`** - String registration and variable interpolation +- **`mFallback()`** and **`gtFallback()`** - Migration helpers for incremental adoption --- diff --git a/devlog/en-US/gt-next_v6_2_0.mdx b/devlog/en-US/gt-next_v6_2_0.mdx index 44172874..048ea331 100644 --- a/devlog/en-US/gt-next_v6_2_0.mdx +++ b/devlog/en-US/gt-next_v6_2_0.mdx @@ -48,8 +48,8 @@ export default function Page() { We deliberately kept `gt()` synchronous to match other i18n libraries. The downside was a `two-step translation process`: - 1. Register the text with the API. - 2. Wait for a second render to display the translated result. +1. Register the text with the API. +2. Wait for a second render to display the translated result. Now, thanks to the compiler, translatable content is scanned ahead of time and passed directly into `useGT()` or `getGT()` at compile time. This means translations are immediately available at runtime — no page refreshes. diff --git a/devlog/en-US/gt-react_v10_15_0.mdx b/devlog/en-US/gt-react_v10_15_0.mdx index c54b98b2..6fb6daf6 100644 --- a/devlog/en-US/gt-react_v10_15_0.mdx +++ b/devlog/en-US/gt-react_v10_15_0.mdx @@ -5,8 +5,6 @@ authors: [ernest] tags: ['gt-react', 'derive', 'tagged-template', 'i18n'] --- -import Video from '@/components/Video'; - ## The `declareStatic()` → `derive()` rename This release is the first to ship with the new `derive()` name. Previously, this function was called `declareStatic()` and the JSX component was ``. In [PR #1062](https://github.com/generaltranslation/gt/pull/1062), both were renamed to `derive()` and `` for clarity. diff --git a/devlog/en-US/gt-react_v10_19_0.mdx b/devlog/en-US/gt-react_v10_19_0.mdx index 398a1267..f7e37e85 100644 --- a/devlog/en-US/gt-react_v10_19_0.mdx +++ b/devlog/en-US/gt-react_v10_19_0.mdx @@ -5,8 +5,6 @@ authors: [ernest] tags: ['gt-react', 'browser', 'hot-reload', 'dev-experience', 'i18n'] --- -import Video from '@/components/Video'; -