zhuojg/agent-skills

paraglide-js

Use when adding or modifying Paraglide JS internationalization, locale detection strategies, localized routing, or generated message usage in Vite, SSR, TanStack Start, or monorepo setups.

ソースを見る

使い方

  1. インストールコマンドをコピーし、自分の環境へ導入する前にソースを確認します。
  2. 必要なツール、認証情報、対応環境を原文で確認します。
  3. 入力と成果物を指定し、出力を資料と照合します。
npx skills add https://github.com/zhuojg/agent-skills --skill paraglide-js

開始前の確認

  • 導入にはモデル契約、API枠、ファイルへのアクセス許可は含まれません。
  • スター数や導入数は活動の指標であり、独立した品質・安全性試験ではありません。
リポジトリの原文

見出し、例、コード、表、リンク、参照画像を含む原文を表示しています。

Paraglide JS

Overview

Paraglide JS is a compiler-based i18n library that generates typed message functions and runtime helpers. Use this skill when a project needs Paraglide setup, message usage, locale detection, SSR integration, or refactoring around generated paraglide/ output.

When To Use

  • Adding Paraglide JS to a new or existing app
  • Updating locale strategy order or custom strategies
  • Wiring SSR locale detection with paraglideMiddleware()
  • Integrating Paraglide into TanStack Start
  • Reusing one project.inlang across a monorepo

Do not use this skill for generic copywriting or translation quality review. It is for code integration and runtime behavior.

Core Workflow

  1. Identify the app shape: Vite app, SSR app, TanStack Start app, or monorepo.
  2. Prefer the Vite plugin for Vite-based apps.
  3. Use CLI compilation when bundler integration is unavailable or when a package needs explicit compile scripts.
  4. Add server middleware only for SSR/server request flows.
  5. Keep project.inlang and message files as the source of truth; treat generated paraglide/ output as build artifacts.
  6. Recompile after changing messages, locales, strategy, or output settings.

Rules Of Thumb

  • Prefer paraglideVitePlugin() in Vite projects instead of hand-rolling generated output.
  • Prefer built-in strategies before adding custom ones.
  • Order strategies intentionally. Earlier strategies win.
  • Use one owner for URL rewriting. Do not combine router-level URL rewrites and middleware-driven URL localization without checking for redirect loops.
  • In monorepos, default to "each package compiles" unless every consumer can share one identical strategy/runtime.

Reference Guide

Common Mistakes

  • Editing generated src/paraglide/* files directly instead of changing source messages or config
  • Forgetting to recompile after changing messages/*.json or project.inlang/settings.json
  • Adding paraglideMiddleware() to client-only SPAs
  • Putting a preference strategy before url without expecting redirect behavior
  • Using TanStack Router rewrites and URL-based middleware localization together without testing for loops

External Sources

  • Official docs: https://inlang.com/m/gerre34r/library-inlang-paraglideJs/
  • Vite guide: https://inlang.com/m/gerre34r/library-inlang-paraglideJs/vite
  • Monorepo guide: https://inlang.com/m/gerre34r/library-inlang-paraglideJs/monorepo
  • Middleware guide: https://inlang.com/m/gerre34r/library-inlang-paraglideJs/middleware
  • TanStack Router i18n guide: https://tanstack.com/router/v1/docs/framework/react/guide/internationalization-i18n

タスクに関連する項目