# Posimai Project — AI Instructions ## 新しい AI への引き継ぎチェックリスト(必読) 別の AI エージェント(Antigravity 等)やセッションを新たに始めるときは、**必ず最初にこのセクションを読ませること。** ### 作業前に AI が確認すべき事項 1. **CLAUDE.md を全文読む**(このファイル)— デザインルール・デプロイ方法・禁止事項がすべてここにある 2. **memory/ ディレクトリを確認する** — `C:\Users\maita\.claude\projects\c--Users-maita-posimai-project\memory\MEMORY.md` にプロジェクト固有の記憶がある 3. **`posimai-dashboard/src/data/projects.json` を確認する** — 全アプリの一覧・ステータス・技術スタックがここにある ### AI が絶対に守るべきルール(違反時は即修正) | 禁止事項 | 理由 | |---------|------| | 絵文字の使用(コード・コメント・HTML 問わず) | デザインルール違反 | | `lucide@latest` の使用 | バージョン固定済み(`@0.344.0`) | | CDN ライブラリのバージョン未固定(`@latest` 等) | SW キャッシュ破壊・予期せぬ破壊的変更のリスク | | `vercel --prod` の直接実行 | GitHub push で自動デプロイされるため二重になる | | `git push origin` の使用 | `gitea` と `github` の2リモートを使う | | デザインシステム外の色の使用 | アクセントは `--accent` 1色のみ | | manifest.json / sw.js のないアプリを作る | 全アプリ PWA 必須 | | `theme-color` メタタグをメディアクエリなしで書く | ライトモード時に黒い問題が発生する | ### 作業完了時の必須チェック - [ ] emoji が増えていないか (`grep -r "emoji\|✅\|📱\|⚙️\|🎉" --include="*.html"`) - [ ] `@latest` が増えていないか (`grep -r "@latest" --include="*.html"`) - [ ] `npm run deploy` でデプロイしたか(`git push gitea main && git push github main`) - [ ] 大きな変更なら Dashboard Timeline に追記したか --- ## Deploy ルール(必須) コードを変更してデプロイするときは **必ずこの手順** を使うこと: ```bash git add . git commit -m "feat/fix/chore: 変更内容" npm run deploy ``` `npm run deploy` = `git push gitea main && git push github main` - **Gitea**(`http://100.76.7.3:3000/mai/`): ローカルバックアップ - **GitHub**(`https://github.com/posimai/`): Vercel 自動デプロイのトリガー ### やってはいけないこと - `vercel --prod` を直接実行しない(GitHub push で自動デプロイされるため不要) - **例外**: 新アプリの初回本番デプロイのみ、空コミット push で代替する(`_template/README.md` 参照) - `git push origin` を使わない(`gitea` と `github` の2つのリモートを使う) - `git push github main` だけ実行して Gitea を忘れない --- ## プロジェクト構成 | アプリ | ディレクトリ | 説明 | |--------|-------------|------| | posimai-dashboard | `posimai-dashboard/` | Next.js メインダッシュボード | | posimai-analytics | `posimai-analytics/` | Next.js アナリティクス | | posimai-brain | `posimai-brain/` | 記事管理(静的) | | posimai-feed | `posimai-feed/` | RSS フィード(静的) | | posimai-events | `posimai-events/` | イベント情報(静的) | | posimai-hotels | `posimai-hotels/` | ホテル価格ウォッチ(静的) | | posimai-daily | `posimai-daily/` | オーディオファースト・ブリーフィング(静的/API融合) | | posimai-maps | `posimai-maps/` | マップ(静的) | | posimai-reader | `posimai-reader/` | 記事リーダー(静的) | | posimai-together | `posimai-together/` | 共有スペース(静的) | | posimai-journal | `posimai-journal/` | CMS エディタ(Synology API バック) | | posimai-site | `posimai-site/` | 公開ホームページ(journal/site_config と連携) | | posimai-digest | `posimai-digest/` | テキスト要約(静的) | | posimai-ambient | `posimai-ambient/` | 常時表示アンビエント PWA(静的) | | posimai-widget | `posimai_widget/` | Android ホーム画面ウィジェット(Flutter) | ## Synology バックエンド(server.js) - ファイル: `server.js`(ルートに配置、git 管理外) - デプロイ: File Station でアップロード → `docker cp` → `docker restart posimai_api` - API base: `https://posimai-lab.tail72e846.ts.net/brain/api` - 主なテーブル: `users`, `articles`, `journal_posts`, `site_config`, `reading_history` ## デザインシステム(projects.json designRules が正) ``` --bg: #0D0D0D 背景 --surface: #1A1A1A カード面 --surface2: #252525 ネスト面 --border: #2D2D2D ボーダー --text: #F3F4F6 主テキスト --text2: #9CA3AF 副テキスト --text3: #6B7280 弱テキスト --accent: #6EE7B7 アクセント(Posimai Teal)← デフォルト --radius: 12px 角丸 ``` - フォント: Inter(300/400/500/600) - アイコン: Lucide(stroke 1.5〜2.0) - ヘッダー: 高さ 52px、glassmorphism、アクセントドット + アプリ名 - 絵文字: **禁止** - 全アプリ: manifest.json + sw.js + PWA メタタグ必須 ### アプリ別アクセントカラー(デフォルトから意図的に変える場合のみ記載) | アプリ | ダーク accent | ライト accent | 理由 | |--------|-------------|-------------|------| | 全般(デフォルト) | `#6EE7B7` Teal | `#059669` | Posimai ブランドカラー | | posimai-journal | `#80CAEE` Sky-Blue | `#0284C7` | CMS 系・静かで知的な印象 | | posimai-site | `#80CAEE` Sky-Blue | `#0284C7` | journal と同系統の公開サイト | **新アプリ作成時のルール:** 1. デフォルト Teal を使うなら何も記載不要 2. 意図的に変える場合はこの表に追記してから実装する 3. 同じ用途・系統のアプリは同じアクセントカラーに揃える ## 新アプリ作成 `_template/` をコピーして使う。`APP_NAME` / `APP_ID` / `APP_DESCRIPTION` を置換するだけで動く。 **完全な手順(Git / Vercel セットアップ含む)は必ず `_template/README.md` を参照すること。** 特に以下の2点は詰まりやすいので注意: - Gitea リポジトリは **Web UI で先に作成**してから `git remote add gitea` する - `vercel git connect` 後、**空コミット push** で初回本番デプロイをトリガーする ### 新アプリ作成後の必須チェックリスト(抜け漏れ禁止) 新しいアプリを作ったら、**コード実装の完了直後に必ずこの順番で実行する**こと: 1. **Dashboard カード追加** - `posimai-dashboard/src/data/projects.json` の `projects` 配列にエントリを追加 - 適切な `category` を設定(`posimai-pwa` / `active` / `flagship` / `micro` / `infra` など) 2. **Ecosystem Map 追加** - `posimai-dashboard/src/app/ecosystem/page.tsx` の `NODES` 配列にノードを追加 - 関連する `EDGES`(依存関係)も追加 3. **Development Timeline に追記** - `posimai-dashboard/src/app/timeline/page.tsx` の `EVENTS` 配列に今日の日付でエントリを追加 - type: `launch`(新規公開)/ `feature`(機能追加)/ `fix`(修正)/ `infra`(インフラ) 4. **Dashboard をデプロイ** ```bash cd posimai-dashboard git add src/data/projects.json src/app/ecosystem/page.tsx src/app/timeline/page.tsx git commit -m "feat: add [app-name] to dashboard" npm run deploy ``` 5. **プロジェクト構成テーブルを CLAUDE.md に追記**(このファイル) > ⚠️ ダッシュボード更新(カード・Ecosystem・Timeline)を忘れると、アプリが孤立してエコシステムから見えなくなる。 ## 既存アプリに大きな変更をした場合の必須チェックリスト 機能追加・バグ修正・リリースなど **ユーザーが気づくレベルの変更** をしたら: 1. `posimai-dashboard/src/app/timeline/page.tsx` の `EVENTS` 配列に今日の日付でエントリを追加 2. Dashboard をデプロイ ## Git リモート(全アプリ共通) - `gitea` → `http://100.76.7.3:3000/mai/[app-name].git` - `github` → `https://github.com/posimai/[app-name].git`