メインコンテンツまでスキップ

ローカル開発環境

ローカル開発環境のセットアップ手順です。

前提条件

必要なツール

  • Go: 1.25以上
  • Node.js: 22以上
  • pnpm: 10.18.1
  • Docker: Docker Compose対応
  • buf: Protocol Buffers管理ツール

インストール

# Go
# https://go.dev/dl/ からインストール

# Node.js & pnpm
npm install -g pnpm@10.18.1

# Docker
# https://www.docker.com/get-started からインストール

# buf
# https://buf.build/docs/installation からインストール

セットアップ手順

1. リポジトリクローン

git clone <repository-url>
cd bazbii

2. 依存関係インストール

# フロントエンド依存関係
pnpm install

# Go依存関係(自動的に整理される)
make go/tidy

3. データベース起動

# PostgreSQLコンテナ起動
make compose/db.up

# マイグレーション実行
make db/mig-up

詳細なマイグレーション管理については、データベース設計を参照してください。

4. アプリケーション起動

# 全コンテナ起動
make compose/up

# ログ確認(別ターミナル)
make compose/logs

5. 動作確認

# ヘルスチェック
curl http://localhost:3000/healthz

フロントエンド

user-mobile

# Expoアプリ起動
pnpm --filter @bazbii/user-mobile start

partner-web / ops-web

# Next.jsアプリ起動
pnpm --filter @bazbii/partner-web dev
pnpm --filter @bazbii/ops-web dev

トラブルシューティング

ポートが使用中

# 使用中のポートを確認
sudo lsof -i :5432 # PostgreSQL
sudo lsof -i :8080 # API Server

データベース接続エラー

# データベースコンテナ再起動
make compose/db.reset
make db/reset

依存関係の問題

# Go依存関係整理
make go/tidy

# pnpm依存関係整理
pnpm install

マイグレーション管理

マイグレーションファイル

マイグレーションファイルは infra/db/migrations/ に配置されます。

infra/db/migrations/
├── 0001_init.up.sql
├── 0001_init.down.sql
├── 0002_heatmap.up.sql
└── 0002_heatmap.down.sql

マイグレーション実行

# マイグレーション実行(1つずつ)
make db/mig-up

# マイグレーションロールバック(1つずつ)
make db/mig-down

# データベース完全リセット(全ロールバック→再適用)
make db/reset

# 現在のマイグレーション版本を表示
make db/mig-ver

マイグレーション作成

新しいマイグレーションファイルを作成する場合は、golang-migrate の命名規則に従って手動で作成します。

詳細はMakeコマンド一覧を参照してください。

関連ドキュメント