Skip to content

Instantly share code, notes, and snippets.

@sibukixxx
Created July 25, 2025 12:54
Show Gist options
  • Select an option

  • Save sibukixxx/3f2c5618313a69b33b267a05cb7bff0b to your computer and use it in GitHub Desktop.

Select an option

Save sibukixxx/3f2c5618313a69b33b267a05cb7bff0b to your computer and use it in GitHub Desktop.
#!/bin/bash
# setup_dev.sh - Docker を使わずに開発環境をセットアップするスクリプト
echo "🚀 動画生成アプリケーションの開発環境をセットアップします"
echo "このスクリプトは Python 3.10+ と Node.js 20+ がインストールされていることを前提としています"
# 変数
UV_VERSION="0.6.2"
POETHEPOET_VERSION="0.32.2"
# バックエンド環境のセットアップ
setup_backend() {
echo "📦 バックエンド環境をセットアップしています..."
cd hs-saas-api || { echo "バックエンドディレクトリが見つかりません"; exit 1; }
# Python仮想環境の作成とアクティベート
if [ ! -d ".venv" ]; then
echo "🐍 Python仮想環境を作成しています..."
python -m venv .venv
fi
# 仮想環境をアクティベート
source .venv/bin/activate || { echo "仮想環境のアクティベートに失敗しました"; exit 1; }
# uvのインストール
echo "📚 uvをインストールしています (v${UV_VERSION})..."
pip install --upgrade pip
pip install uv==${UV_VERSION} poethepoet==${POETHEPOET_VERSION}
# 依存関係のインストール
echo "📚 Pythonパッケージをインストールしています (uvを使用)..."
uv sync
echo "✅ バックエンド環境のセットアップが完了しました"
cd ..
}
# フロントエンド環境のセットアップ
setup_frontend() {
echo "🖥️ フロントエンド環境をセットアップしています..."
cd hs-saas-ui || { echo "フロントエンドディレクトリが見つかりません"; exit 1; }
# Node.jsの依存関係をインストール
echo "📚 Node.jsパッケージをインストールしています..."
npm install
echo "✅ フロントエンド環境のセットアップが完了しました"
cd ..
}
# メイン処理
echo "🔍 依存関係を確認しています..."
# Python のバージョンを確認
python_version=$(python --version 2>&1)
if [[ $python_version != *"Python 3."* ]]; then
echo "❌ Python 3 が見つかりません。インストールしてから再度実行してください。"
exit 1
fi
echo "✓ $python_version が見つかりました"
# Node.js のバージョンを確認
if ! command -v node &> /dev/null; then
echo "❌ Node.js が見つかりません。インストールしてから再度実行してください。"
exit 1
fi
node_version=$(node --version)
echo "✓ Node.js $node_version が見つかりました"
# npm のバージョンを確認
if ! command -v npm &> /dev/null; then
echo "❌ npm が見つかりません。Node.js とともにインストールしてください。"
exit 1
fi
npm_version=$(npm --version)
echo "✓ npm $npm_version が見つかりました"
# バックエンドとフロントエンドのセットアップを実行
setup_backend
setup_frontend
echo "🎉 開発環境のセットアップが完了しました!"
echo "以下のコマンドで開発サーバーを起動できます:"
echo " バックエンド: ./run_backend.sh"
echo " フロントエンド: ./run_frontend.sh"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment