87 lines
2.9 KiB
Markdown
87 lines
2.9 KiB
Markdown
|
|
# Posimai Static App Template
|
|||
|
|
|
|||
|
|
新しい静的 PWA アプリを作るときのボイラープレート。
|
|||
|
|
|
|||
|
|
## 使い方
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 1. テンプレートをコピー
|
|||
|
|
cp -r _template posimai-[new-app-name]
|
|||
|
|
cd posimai-[new-app-name]
|
|||
|
|
|
|||
|
|
# 2. APP_NAME / APP_ID / APP_DESCRIPTION を置換
|
|||
|
|
# APP_NAME → 表示名 (例: "Posimai Timer")
|
|||
|
|
# APP_ID → 識別子 (例: "posimai-timer")
|
|||
|
|
# APP_DESCRIPTION → 説明文
|
|||
|
|
|
|||
|
|
# 3. Git 初期化
|
|||
|
|
git init && git add . && git commit -m "init: APP_NAME"
|
|||
|
|
|
|||
|
|
# 4. Gitea にリポジトリを作成(★ Web UI で先に行う)
|
|||
|
|
# http://100.76.7.3:3000 にアクセス
|
|||
|
|
# → 「+」→「新しいリポジトリ」→ 名前: APP_ID → 作成
|
|||
|
|
# ※ この手順を飛ばすと git push gitea が 404 で失敗する
|
|||
|
|
|
|||
|
|
# 5. GitHub にリポジトリ作成(gh CLI)
|
|||
|
|
gh repo create posimai/APP_ID --private
|
|||
|
|
|
|||
|
|
# 6. リモートを追加して初回 push
|
|||
|
|
git remote add gitea http://100.76.7.3:3000/mai/APP_ID.git
|
|||
|
|
git remote add github https://github.com/posimai/APP_ID.git
|
|||
|
|
npm run deploy # = git push gitea main && git push github main
|
|||
|
|
|
|||
|
|
# 7. Vercel と GitHub を連携(1アプリにつき1回だけ)
|
|||
|
|
# --yes では対話が消えないため echo パイプで GitHub を選択させる
|
|||
|
|
echo "https://github.com/posimai/APP_ID.git" | vercel git connect
|
|||
|
|
|
|||
|
|
# 8. 初回本番デプロイをトリガー(1回だけ必要)
|
|||
|
|
# vercel git connect だけでは本番反映されないため、空コミットで push する
|
|||
|
|
git commit --allow-empty -m "ci: trigger initial Vercel deployment"
|
|||
|
|
npm run deploy
|
|||
|
|
# Vercel ダッシュボードで "Production" デプロイが完了したら以降は不要
|
|||
|
|
# ※ 通常運用では vercel --prod は実行しない(GitHub push で自動)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
以降の更新はすべて:
|
|||
|
|
```bash
|
|||
|
|
git add .
|
|||
|
|
git commit -m "feat/fix/chore: 変更内容"
|
|||
|
|
npm run deploy
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## デプロイフロー(全体像)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
npm run deploy
|
|||
|
|
│
|
|||
|
|
├─► git push gitea main → Synology NAS (ローカルバックアップのみ)
|
|||
|
|
│
|
|||
|
|
└─► git push github main → GitHub
|
|||
|
|
│
|
|||
|
|
│ Webhook (push 検知)
|
|||
|
|
▼
|
|||
|
|
Vercel
|
|||
|
|
└─ ビルド → 本番反映
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
- **Gitea** はバックアップ専用。Vercel とは無関係。
|
|||
|
|
- **GitHub push** が Vercel の唯一のトリガー。
|
|||
|
|
- `vercel --prod` の直接実行は禁止(初回トリガー用の空コミット push で代替)。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## デザイントークン(変更禁止)
|
|||
|
|
|
|||
|
|
| トークン | 値 | 用途 |
|
|||
|
|
|---------|-----|------|
|
|||
|
|
| `--bg` | `#0D0D0D` | ページ背景 |
|
|||
|
|
| `--surface` | `#1A1A1A` | カード背景 |
|
|||
|
|
| `--surface2` | `#252525` | ネスト要素 |
|
|||
|
|
| `--border` | `#2D2D2D` | ボーダー |
|
|||
|
|
| `--text` | `#F3F4F6` | 主テキスト |
|
|||
|
|
| `--text2` | `#9CA3AF` | 副テキスト |
|
|||
|
|
| `--accent` | `#6EE7B7` | アクセント |
|
|||
|
|
| `--radius` | `12px` | 角丸 |
|