feat(i18n): Add Japanese (ja/) translation (#105)
- Translate all 101 markdown files: P1 core, all 10 modules, examples, auxiliary docs (CONTRIBUTING, CODE_OF_CONDUCT, SECURITY, CLAUDE.md, etc.), peripheral docs (.github/, docs/, resources/, scripts/) - Translate comments and user-facing messages in 06-hooks/*.sh examples - Copy 05-mcp/*.json examples (standard JSON, no comments) - Update root README.md language switcher to include 日本語 - Add ja/TRANSLATION_NOTES.md (glossary + style guide) All translations pass pre-commit quality gates (markdown-lint, cross-references, mermaid-syntax, link-check, build-epub).
This commit is contained in:
1212
ja/02-memory/README.md
Normal file
1212
ja/02-memory/README.md
Normal file
File diff suppressed because it is too large
Load Diff
68
ja/02-memory/directory-api-CLAUDE.md
Normal file
68
ja/02-memory/directory-api-CLAUDE.md
Normal file
@@ -0,0 +1,68 @@
|
||||
<!-- i18n-source: 02-memory/directory-api-CLAUDE.md -->
|
||||
<!-- i18n-source-sha: 7f2e773 -->
|
||||
<!-- i18n-date: 2026-04-27 -->
|
||||
|
||||
# API モジュール標準
|
||||
|
||||
このファイルは /src/api/ 配下のすべてに対し、ルートの CLAUDE.md を上書きする。
|
||||
|
||||
## API 固有の標準
|
||||
|
||||
### リクエスト検証
|
||||
- スキーマ検証には Zod を使う
|
||||
- 入力は必ず検証する
|
||||
- 検証エラー時は 400 を返す
|
||||
- フィールド単位のエラー詳細を含める
|
||||
|
||||
### 認証
|
||||
- すべてのエンドポイントで JWT トークンを必須とする
|
||||
- トークンは Authorization ヘッダに付ける
|
||||
- トークンの有効期限は 24 時間
|
||||
- リフレッシュトークン機構を実装する
|
||||
|
||||
### レスポンス形式
|
||||
|
||||
すべてのレスポンスは次の構造に従う:
|
||||
|
||||
```json
|
||||
{
|
||||
"success": true,
|
||||
"data": { /* actual data */ },
|
||||
"timestamp": "2025-11-06T10:30:00Z",
|
||||
"version": "1.0"
|
||||
}
|
||||
```
|
||||
|
||||
エラーレスポンス:
|
||||
```json
|
||||
{
|
||||
"success": false,
|
||||
"error": {
|
||||
"code": "VALIDATION_ERROR",
|
||||
"message": "User message",
|
||||
"details": { /* field errors */ }
|
||||
},
|
||||
"timestamp": "2025-11-06T10:30:00Z"
|
||||
}
|
||||
```
|
||||
|
||||
### ページネーション
|
||||
- カーソルベースページネーションを使う(オフセット方式は使わない)
|
||||
- `hasMore` の真偽値を含める
|
||||
- 1 ページの最大サイズは 100 まで
|
||||
- デフォルトのページサイズ: 20
|
||||
|
||||
### レート制限
|
||||
- 認証済みユーザー: 1 時間あたり 1000 リクエスト
|
||||
- 公開エンドポイント: 1 時間あたり 100 リクエスト
|
||||
- 上限超過時は 429 を返す
|
||||
- retry-after ヘッダを付ける
|
||||
|
||||
### キャッシュ
|
||||
- セッションキャッシュには Redis を使う
|
||||
- キャッシュ期間: デフォルト 5 分
|
||||
- 書き込み操作時に無効化する
|
||||
- キャッシュキーにリソース種別のタグを付ける
|
||||
|
||||
---
|
||||
**Last Updated**: April 9, 2026
|
||||
67
ja/02-memory/personal-CLAUDE.md
Normal file
67
ja/02-memory/personal-CLAUDE.md
Normal file
@@ -0,0 +1,67 @@
|
||||
<!-- i18n-source: 02-memory/personal-CLAUDE.md -->
|
||||
<!-- i18n-source-sha: 7f2e773 -->
|
||||
<!-- i18n-date: 2026-04-27 -->
|
||||
|
||||
# 開発上の好み
|
||||
|
||||
## プロフィール
|
||||
- **経験年数**: フルスタック開発 8 年
|
||||
- **得意な言語**: TypeScript、Python
|
||||
- **コミュニケーションスタイル**: 例を示しながら端的に
|
||||
- **学び方**: 視覚的な図解 + コード
|
||||
|
||||
## コードに関する好み
|
||||
|
||||
### エラーハンドリング
|
||||
try-catch ブロックと意味のあるエラーメッセージで、明示的にエラーを扱うのを好む。
|
||||
汎用的なエラーは避ける。デバッグのため必ずエラーをログに残す。
|
||||
|
||||
### コメント
|
||||
コメントは「なぜ(WHY)」を書く。「なに(WHAT)」ではない。コードはそれ自身がドキュメントであるべき。
|
||||
ビジネスロジックや自明でない判断についてコメントで説明する。
|
||||
|
||||
### テスト
|
||||
TDD(テスト駆動開発)を好む。
|
||||
先にテストを書き、その後で実装する。
|
||||
実装の詳細ではなく、振る舞いに焦点を当てる。
|
||||
|
||||
### アーキテクチャ
|
||||
モジュール化された疎結合の設計を好む。
|
||||
テスト容易性のため依存性注入を使う。
|
||||
関心を分離する(Controllers、Services、Repositories)。
|
||||
|
||||
## デバッグの好み
|
||||
- console.log にプレフィックスを付ける: `[DEBUG]`
|
||||
- コンテキストを含める: 関数名、関連変数
|
||||
- 利用可能ならスタックトレースを使う
|
||||
- ログには必ずタイムスタンプを含める
|
||||
|
||||
## コミュニケーション
|
||||
- 複雑な概念は図で説明する
|
||||
- 理論より先に具体例を示す
|
||||
- 変更前/変更後のコードスニペットを含める
|
||||
- 最後に要点をまとめる
|
||||
|
||||
## プロジェクト構成
|
||||
プロジェクトは次のように整理する:
|
||||
```
|
||||
project/
|
||||
├── src/
|
||||
│ ├── api/
|
||||
│ ├── services/
|
||||
│ ├── models/
|
||||
│ └── utils/
|
||||
├── tests/
|
||||
├── docs/
|
||||
└── docker/
|
||||
```
|
||||
|
||||
## ツール
|
||||
- **IDE**: VS Code(vim キーバインド)
|
||||
- **ターミナル**: Zsh + Oh-My-Zsh
|
||||
- **フォーマッタ**: Prettier(行長 100 文字)
|
||||
- **リンタ**: ESLint(airbnb config)
|
||||
- **テストフレームワーク**: Jest + React Testing Library
|
||||
|
||||
---
|
||||
**Last Updated**: April 9, 2026
|
||||
95
ja/02-memory/project-CLAUDE.md
Normal file
95
ja/02-memory/project-CLAUDE.md
Normal file
@@ -0,0 +1,95 @@
|
||||
<!-- i18n-source: 02-memory/project-CLAUDE.md -->
|
||||
<!-- i18n-source-sha: 7f2e773 -->
|
||||
<!-- i18n-date: 2026-04-27 -->
|
||||
|
||||
# プロジェクト設定
|
||||
|
||||
## プロジェクト概要
|
||||
- **名称**: E コマースプラットフォーム
|
||||
- **技術スタック**: Node.js、PostgreSQL、React 18、Docker
|
||||
- **チーム規模**: 開発者 5 名
|
||||
- **デッドライン**: 2025 年第 4 四半期
|
||||
|
||||
## アーキテクチャ
|
||||
@docs/architecture.md
|
||||
@docs/api-standards.md
|
||||
@docs/database-schema.md
|
||||
|
||||
## 開発標準
|
||||
|
||||
### コードスタイル
|
||||
- フォーマットには Prettier を使う
|
||||
- ESLint(airbnb config)を使う
|
||||
- 1 行の最大長: 100 文字
|
||||
- インデント: スペース 2 個
|
||||
|
||||
### 命名規則
|
||||
- **ファイル**: kebab-case(user-controller.js)
|
||||
- **クラス**: PascalCase(UserService)
|
||||
- **関数/変数**: camelCase(getUserById)
|
||||
- **定数**: UPPER_SNAKE_CASE(API_BASE_URL)
|
||||
- **データベーステーブル**: snake_case(user_accounts)
|
||||
|
||||
### Git ワークフロー
|
||||
- ブランチ名: `feature/description` または `fix/description`
|
||||
- コミットメッセージ: Conventional Commits に従う
|
||||
- マージ前に PR が必要
|
||||
- すべての CI/CD チェックを通す
|
||||
- 最低 1 名の承認が必要
|
||||
|
||||
### テスト要件
|
||||
- コードカバレッジ最低 80%
|
||||
- すべての主要パスにテストが必要
|
||||
- ユニットテストには Jest を使う
|
||||
- E2E テストには Cypress を使う
|
||||
- テストファイル名: `*.test.ts` または `*.spec.ts`
|
||||
|
||||
### API 標準
|
||||
- RESTful エンドポイントのみ
|
||||
- リクエスト/レスポンスは JSON
|
||||
- HTTP ステータスコードを正しく使う
|
||||
- API はバージョン付きエンドポイント: `/api/v1/`
|
||||
- 全エンドポイントに例付きドキュメントを用意する
|
||||
|
||||
### データベース
|
||||
- スキーマ変更にはマイグレーションを使う
|
||||
- 認証情報をハードコードしない
|
||||
- コネクションプーリングを使う
|
||||
- 開発環境ではクエリログを有効化する
|
||||
- 定期的なバックアップを必須とする
|
||||
|
||||
### デプロイ
|
||||
- Docker ベースのデプロイ
|
||||
- Kubernetes によるオーケストレーション
|
||||
- Blue-Green デプロイ戦略
|
||||
- 失敗時は自動ロールバック
|
||||
- データベースマイグレーションはデプロイ前に実行する
|
||||
|
||||
## よく使うコマンド
|
||||
|
||||
| コマンド | 用途 |
|
||||
|---------|------|
|
||||
| `npm run dev` | 開発サーバを起動 |
|
||||
| `npm test` | テストスイートを実行 |
|
||||
| `npm run lint` | コードスタイルを確認 |
|
||||
| `npm run build` | 本番向けビルド |
|
||||
| `npm run migrate` | データベースマイグレーションを実行 |
|
||||
|
||||
## チーム連絡先
|
||||
- Tech Lead: Sarah Chen (@sarah.chen)
|
||||
- Product Manager: Mike Johnson (@mike.j)
|
||||
- DevOps: Alex Kim (@alex.k)
|
||||
|
||||
## 既知の問題と回避策
|
||||
- ピーク時、PostgreSQL のコネクションプールが 20 に制限される
|
||||
- 回避策: クエリのキューイングを実装する
|
||||
- Safari 14 で async generator の互換性問題
|
||||
- 回避策: Babel トランスパイラを使う
|
||||
|
||||
## 関連プロジェクト
|
||||
- Analytics Dashboard: `/projects/analytics`
|
||||
- Mobile App: `/projects/mobile`
|
||||
- Admin Panel: `/projects/admin`
|
||||
|
||||
---
|
||||
**Last Updated**: April 9, 2026
|
||||
Reference in New Issue
Block a user