#!/usr/bin/env bash set -euo pipefail PROJECT_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" COMPOSE_FILE="${PROJECT_ROOT}/docker-compose.dev.yml" usage() { printf 'Usage: %s {up|down|logs|check|test}\n' "$0" } command="${1:-}" case "${command}" in up) docker compose --file "${COMPOSE_FILE}" up --build --remove-orphans ;; down) docker compose --file "${COMPOSE_FILE}" down --remove-orphans ;; logs) docker compose --file "${COMPOSE_FILE}" logs --follow ;; check) uv run --directory "${PROJECT_ROOT}/zhixing-server" ruff format --check . uv run --directory "${PROJECT_ROOT}/zhixing-server" ruff check . uv run --directory "${PROJECT_ROOT}/zhixing-server" pyright pnpm --dir "${PROJECT_ROOT}/zhixing-web" check ;; test) uv run --directory "${PROJECT_ROOT}/zhixing-server" pytest pnpm --dir "${PROJECT_ROOT}/zhixing-web" test ;; *) usage exit 1 ;; esac