# Makefile: 適用於使用 uv 管理的 Python 專案 PY := uv venv exec -- python PIP := uv pip VENV := .venv .PHONY: help init install lint format test run clean help: @echo "📘 可用指令:" @echo " make init - 建立虛擬環境 (.venv)" @echo " make install - 安裝 requirements.txt 中的套件" @echo " make lint - 使用 ruff 進行靜態檢查" @echo " make format - 使用 ruff 自動格式化程式碼" @echo " make test - 使用 pytest 執行測試" @echo " make run - 執行主程式 src/main.py" @echo " make clean - 移除快取與虛擬環境" init: @echo "🐍 建立 uv 虛擬環境..." uv venv @echo "✅ 虛擬環境已建立於 $(VENV)" install: @echo "📦 安裝套件..." $(PIP) install -r requirements.txt @echo "✅ 套件安裝完成" lint: @echo "🔍 程式碼檢查 (ruff)..." uv venv exec -- ruff check src tests format: @echo "🧼 自動格式化 (ruff)..." uv venv exec -- ruff format src tests test: @echo "🧪 執行測試 (pytest)..." uv venv exec -- pytest run: @echo "🚀 執行主程式..." $(PY) src/main.py clean: @echo "🧹 清理專案..." rm -rf .venv __pycache__ */__pycache__ *.pyc .ruff_cache .pytest_cache .mypy_cache @echo "✅ 清理完成"