Back to list
JavaScript のための軽量 i18n ライブラリを作成しました — globaly-i18n をご紹介
I Built a Lightweight i18n Library for JavaScript — Meet globaly-i18n
Translated: 2026/3/15 18:01:11
Japanese Translation
globaly-i18n
フロントエンドとバックエンドアプリケーション(Node.js、React、Vue、Next.js、Express、NestJS など)でシームレスに動作するように設計されています。
✨ 機能
```typescript
const i18n = await createI18n({
./locales/${lang}/${ns}.json).then((m) => m.default);
console.log(i18n.t("common:home.title", { name: "Rounak" }));
// Welcome Rounak
```
locales
```typescript
console.log(i18n.t("common:home.title", { name: "Rounak" }));
// Willkommen Rounak
// 英語:Welcome Rounak
```
```typescript
console.log(i18n.t("dashboard:stats.users"));
// You have 5 items
```
⚡ 翻訳キャッシュ
反復呼び出しの場合:
```typescript
i18n.t("common:home.title");
```
💾 レージの永続化
```typescript
await i18n.setLanguage("de");
```
🧠 レージ検出
ブラウザの設定
```typescript
const i18n = await createI18n({
./locales/${lang}/${ns}.json).then((m) => m.default)
import { I18nProvider } from "globaly-i18n/react";
import { useTranslation } from "globaly-i18n/react";
function Home() {
return (
{t("common:home.title")}
);
}
```
Node.js の場合:
```typescript
const app = express();
const i18n = await createI18n({
./locales/${lang}/${ns}.json).then((m) => m.default)
app.use(i18nMiddleware(i18n));
app.get("/", (req, res) => {
app.listen(3000);
// エクサンプルソースコード
```
```bash
npx globaly-i18n extract src
npx globaly-i18n translate --from en --to de,fr,es
```
```typescript
// 有効
i18n.t("common:home.title");
```
| オプション | タイプ | 説明 |
| :--- | :--- | :--- |
| ... | ... | ... |
```typescript
const i18n = await createI18n({
./locales/${lang}/${ns}.json).then((m) => m.default)
console.log(i18n.t("common:home.title"));
function Example() {
return
{t("common:home.title")}
;
}
```
gLOBALY-I18N は以下に焦点を当てています:
⚡ ライトウェイトなアーキテクチャ
```bash
npm test
```
🔑 キーワード
📄 ライセンス
⭐ サポート
⭐ リポジトリをスター
📦 他の開発者と共有
🐛 バグ報告や改善提案
Original Content
globaly-i18n
Designed to work seamlessly in frontend and backend applications, including Node.js, React, Vue, Next.js, Express, and NestJS.
npm version weekly downloads total downloads bundle size license typescript
✨ Features
npm install globaly-i18n
yarn add globaly-i18n
pnpm add globaly-i18n
const i18n = await createI18n({
./locales/${lang}/${ns}.json).then((m) => m.default),
console.log(i18n.t("common:home.title", { name: "Rounak" }));
Welcome Rounak
locales
console.log(i18n.t("common:home.title", { name: "Rounak" }));
Willkommen Rounak
You have 5 items
Welcome Rounak
await i18n.loadNamespace("dashboard");
console.log(i18n.t("dashboard:stats.users"));
⚡ Translation Caching
Repeated calls like:
i18n.t("common:home.title");
💾 Language Persistence
await i18n.setLanguage("de");
🧠 Language Detection
Browser settings
const i18n = await createI18n({
./locales/${lang}/${ns}.json).then((m) => m.default)
import { I18nProvider } from "globaly-i18n/react";
import { useTranslation } from "globaly-i18n/react";
function Home() {
return (
{t("common:home.title")}
const app = express();
const i18n = await createI18n({
./locales/${lang}/${ns}.json).then((m) => m.default)
app.use(i18nMiddleware(i18n));
app.get("/", (req, res) => {
app.listen(3000);
Example source code
t("common:home.title");
npx globaly-i18n extract src
npx globaly-i18n translate --from en --to de,fr,es
locales
i18n.t("common:home.title"); // valid
Option Type Description
const i18n = await createI18n({
./locales/${lang}/${ns}.json).then((m) => m.default)
console.log(i18n.t("common:home.title"));
function Example() {
return
{t("common:home.title")}
;
}
globaly-i18n focuses on:
⚡ lightweight architecture
npm test
🔑 Keywords
📄 License
⭐ Support
⭐ Star the repository
📦 Share it with other developers
🐛 Report issues or suggest improvements