94 lines
2.8 KiB
Makefile
94 lines
2.8 KiB
Makefile
|
|
# ─────────────────────────────────────────────────────────────
|
||
|
|
# Hermes Kanban Mini App — Makefile
|
||
|
|
# Common development and deployment commands
|
||
|
|
# ─────────────────────────────────────────────────────────────
|
||
|
|
|
||
|
|
.PHONY: dev dev-bridge dev-frontend build install typecheck test test-bridge clean up down logs
|
||
|
|
|
||
|
|
# ── Local development ───────────────────────────────────────
|
||
|
|
|
||
|
|
## Install all dependencies
|
||
|
|
install:
|
||
|
|
pnpm install
|
||
|
|
|
||
|
|
## Run bridge + frontend in dev mode (parallel)
|
||
|
|
dev:
|
||
|
|
@echo "Starting bridge (port 3456) and frontend (port 5173)..."
|
||
|
|
@pnpm --filter @kanban/bridge dev & \
|
||
|
|
pnpm --filter frontend dev & \
|
||
|
|
wait
|
||
|
|
|
||
|
|
## Run bridge only in dev mode (watch)
|
||
|
|
dev-bridge:
|
||
|
|
pnpm --filter @kanban/bridge dev
|
||
|
|
|
||
|
|
## Run frontend only in dev mode
|
||
|
|
dev-frontend:
|
||
|
|
pnpm --filter frontend dev
|
||
|
|
|
||
|
|
# ── Build ───────────────────────────────────────────────────
|
||
|
|
|
||
|
|
## Build all TypeScript packages
|
||
|
|
build:
|
||
|
|
pnpm -r build
|
||
|
|
|
||
|
|
## Build Docker images
|
||
|
|
docker-build:
|
||
|
|
docker compose build
|
||
|
|
|
||
|
|
## Build + tag production images
|
||
|
|
docker-build-prod:
|
||
|
|
docker compose -f docker-compose.yml build --no-cache
|
||
|
|
|
||
|
|
# ── Quality ─────────────────────────────────────────────────
|
||
|
|
|
||
|
|
## Run TypeScript type checking
|
||
|
|
typecheck:
|
||
|
|
pnpm typecheck
|
||
|
|
|
||
|
|
## Run all tests
|
||
|
|
test: test-bridge
|
||
|
|
|
||
|
|
## Run bridge tests
|
||
|
|
test-bridge:
|
||
|
|
pnpm --filter @kanban/bridge test
|
||
|
|
|
||
|
|
## Run frontend build (includes tsc)
|
||
|
|
test-frontend:
|
||
|
|
pnpm --filter frontend build
|
||
|
|
|
||
|
|
## Run full CI pipeline locally
|
||
|
|
ci: install typecheck test build
|
||
|
|
|
||
|
|
# ── Docker Compose ──────────────────────────────────────────
|
||
|
|
|
||
|
|
## Start services with docker compose
|
||
|
|
up:
|
||
|
|
docker compose up -d
|
||
|
|
|
||
|
|
## Stop services
|
||
|
|
down:
|
||
|
|
docker compose down
|
||
|
|
|
||
|
|
## View service logs
|
||
|
|
logs:
|
||
|
|
docker compose logs -f
|
||
|
|
|
||
|
|
## Rebuild and restart services
|
||
|
|
restart: down docker-build up
|
||
|
|
|
||
|
|
# ── Cleanup ─────────────────────────────────────────────────
|
||
|
|
|
||
|
|
## Remove build artifacts
|
||
|
|
clean:
|
||
|
|
pnpm -r clean
|
||
|
|
rm -rf frontend/dist
|
||
|
|
|
||
|
|
## Full clean (including node_modules)
|
||
|
|
clean-all: clean
|
||
|
|
rm -rf node_modules packages/*/node_modules frontend/node_modules
|
||
|
|
|
||
|
|
## Remove Docker images
|
||
|
|
docker-clean:
|
||
|
|
docker compose down --rmi local --volumes --remove-orphans
|