Назад

Запуск gt-next

Archie McKenzie avatarArchie McKenzie
guideinternationalizationnextjsgt-next

С интернационализацией (i18n) всё сложно. Мы создаём библиотеку для Next.js, gt-next, чтобы упростить этот процесс. Сегодня мы запускаем открытую бета-версию.

npm i gt-next

С gt-next перевод вашего JSX-кода выглядит так:

import { T } from 'gt-next'

export default function Page() {
  return (
    <T id="my_id">
      <p>Вот и всё! Оберните JSX в компонент, и текст будет переведён!</p>
    </T>
  )
}

Это значит:

  • Никаких мучительных переписываний кодовой базы
  • Никакого ожидания переводов по несколько дней
  • Переводы появляются прямо в вашей среде разработки

Просто добавьте несколько переменных окружения, запустите npx translate — и готово.

Цель gt-next — сформировать мышление изобилия, когда речь идёт о переводах. Веб по умолчанию должен быть многоязычным. И многоязычные сайты должны поддерживать 50 языков, а не 5.

Что вы можете делать с gt-next

Форматирование переменных и множественного числа

import { T } from 'gt-next'

export default function Page() {
  const count = 2

  return (
    <T id="my_id">
      <Plural
        n={count}
        singular={
          <>
            У меня <Num /> книга
          </>
        }
      >
        У меня <Num /> книги
      </Plural>
    </T>
  )
}

Используйте ключ API для разработчиков, чтобы просматривать переводы локально

GT_API_KEY="gtx-dev-cae62d6fe1e33bda603c9a2926ab0fb8"
GT_PROJECT_ID="abcdef12-3456-789a-bcd4-ef123456789a"

Поддерживайте более 100 языков «из коробки» с возможностью перевода по требованию.

landing

Редактируйте переводы в интерактивном JSX‑редакторе.

editor