Skip to content

PullLogのPWA化 #5

@ka215

Description

@ka215

目的:

  • PullLogをPWA化してスマートフォンにインストールできるよう、現在の環境を拡張する。

主要タスク:

  • 現行Nuxtアプリの仕様把握と、最適なシステムアーキテクチャの設計
  • バックエンドのAPIサーバ側Laravelアプリの対応項目の洗い出し
  • 実現に必要な公開環境の整理・課題の洗い出しと具体的な対応内容の説明
    • c.f. バックエンドAPIサーバ: Linux + Apache + Laravel 12 + PostgreSQL 14
    • c.f. フロントエンドホスト: Cloudflare Workers
  • 詳細なアルゴリズムと関数の説明
  • テスト方法の設計と実施方法の説明
  • 設計書のマークダウン形式での作成
  • 設計書の精査後、実装指示後に実装

対応内容:

  • 対応にあたって不足している情報があれば質問してください
  • 必要なアセット等があれば催促してください
  • 非機能要件(パフォーマンス、セキュリティ、スケーラビリティなど)を確認してください
  • 設計書は以下の構成で作成してください:
    1. プロジェクト概要
    2. システムアーキテクチャ
    3. データフロー
    4. クラス設計 / ER設計
    5. 主要アルゴリズムと関数の詳細
    6. 非機能要件への対応
    7. 実装上の注意点
    8. 付録(用語集、参考資料など)

実装時の制約/規約:

  • AGENTS.md とプロジェクト規約に従う(4スペース、原則セミコロン無し、any禁止、非nullアサーション禁止、console.log 残置禁止、API は fetch、JSDoc 原則必須、forEach は index 不使用なら for を使う、型は types/ へetc)。
  • 変更は最小で安全に。原則、破壊的変更はしない。
  • i18n 文言変更時は翻訳更新を含める。

手順:

  1. ベースブランチを検出(origin/HEAD があればそれ、無ければ dev を既定に)。新規ブランチを作成:
    • ブランチ名は dev-pwa
  2. Biome と型チェックを実施し、指摘を修正:
    • npx @biomejs/biome check --write .
    • 可能なら pnpm build または pnpm typecheck を実行
  3. すべての差分をステージし、コミットを試行:
    • git add -A
    • コミットメッセージ(日本語、命令形、スコープ付きで)
  4. もし pre-commit が失敗したら、ログを読み取り、原因ファイルを自動修正して 3)〜4) を繰り返す(成功するまでループ)。
  5. コミット成功後、push:
    • git push -u origin <作成ブランチ>
  6. PR 作成:
    • 可能なら gh pr create --base <ベース> --head <作成ブランチ> --title <コミットタイトル> --body-file <一時ファイル>
    • gh が無い場合は PR URL を生成して表示: https://github.com/<owner>/<repo>/compare/<base>...<branch>?expand=1
  7. PR 本文(日本語)を作成し、次の構成で記載:
## 対応内容
- <ファイルパス>
  - <変更点を箇条書き>
- <ファイルパス>
  - <変更点...>

## 影響
- 機能仕様の変更: なし/あり(あれば具体)
- ビルド/実行への影響: なし/あり(具体)
- コーディング規約への準拠状況: 準拠(any/非nullアサーション/console.log など禁止事項の対応)

## 確認コマンド(任意)
- フォーマット/静的検査: `npx @biomejs/biome check --write .`
- ビルド: `pnpm build`
- ローカル起動: `pnpm dev` (https 有効。必要なら hosts に `127.0.0.1 pull.log`)

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions