diff --git a/authors/archie.mdx b/authors/archie.mdx index b64acf16..b4504c22 100644 --- a/authors/archie.mdx +++ b/authors/archie.mdx @@ -4,7 +4,7 @@ avatar: /static/avatars/archie.png occupation: CEO company: General Translation email: archie@generaltranslation.com -twitter: https://x.com/archiemckenzie_/photo +twitter: https://x.com/archiemckenzie_ linkedin: https://www.linkedin.com/in/archie-mckenzie --- 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 651dabb2..075a8729 100644 --- a/blog/en-US/i18n-without-translation-files.mdx +++ b/blog/en-US/i18n-without-translation-files.mdx @@ -6,15 +6,13 @@ 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. Then your app grows. Six months later you have 400 strings and 12 languages. 4,800 entries across a dozen files. A developer adds a new feature, writes five new strings, forgets to update three of the translation files. Nobody notices until a user in Tokyo sees English fallbacks in a Japanese interface. Someone suggests buying a translation management system. -