2026-05-03 17:18:09 -05:00
|
|
|
# Single source of truth for repo commands. CI calls these targets too,
|
|
|
|
|
# so anything that works in `make` locally works in `make` on a runner.
|
|
|
|
|
# Targets delegate to pnpm scripts, which delegate to turborepo.
|
2026-04-27 11:20:47 -05:00
|
|
|
|
2026-05-03 17:18:09 -05:00
|
|
|
.PHONY: bootstrap dev dev-web dev-desktop \
|
|
|
|
|
build test test-e2e lint lint-fix typecheck check \
|
2026-06-02 13:50:27 -05:00
|
|
|
ci-web ci-desktop smoke-docker \
|
2026-06-02 13:59:04 -05:00
|
|
|
up prod down clean install help
|
2026-04-27 11:20:47 -05:00
|
|
|
|
2026-05-03 17:18:09 -05:00
|
|
|
help:
|
|
|
|
|
@grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS=":.*?## "}; {printf " \033[36m%-14s\033[0m %s\n", $$1, $$2}'
|
2026-04-27 11:20:47 -05:00
|
|
|
|
2026-05-03 17:18:09 -05:00
|
|
|
bootstrap: ## Install deps + Playwright Chromium (run once after clone)
|
|
|
|
|
pnpm bootstrap
|
2026-04-27 11:20:47 -05:00
|
|
|
|
2026-05-03 17:18:09 -05:00
|
|
|
dev: dev-desktop ## Alias for `dev-desktop`
|
2026-04-27 11:20:47 -05:00
|
|
|
|
2026-05-03 17:18:09 -05:00
|
|
|
dev-web: ## Vite dev server at http://localhost:5173
|
|
|
|
|
pnpm dev:web
|
2026-04-27 11:20:47 -05:00
|
|
|
|
2026-05-03 17:18:09 -05:00
|
|
|
dev-desktop: ## Tauri desktop app
|
|
|
|
|
pnpm dev:desktop
|
2026-04-27 11:20:47 -05:00
|
|
|
|
2026-05-03 17:18:09 -05:00
|
|
|
build: ## Turbo: build all packages
|
|
|
|
|
pnpm build
|
|
|
|
|
|
|
|
|
|
test: ## Vitest (unit + integration)
|
|
|
|
|
pnpm test
|
|
|
|
|
|
|
|
|
|
test-e2e: ## Playwright e2e (requires bootstrap)
|
|
|
|
|
pnpm test:e2e
|
|
|
|
|
|
|
|
|
|
lint: ## Biome lint check
|
|
|
|
|
pnpm lint
|
|
|
|
|
|
|
|
|
|
lint-fix: ## Biome lint + format auto-fix
|
|
|
|
|
pnpm lint:fix
|
|
|
|
|
|
|
|
|
|
typecheck: ## tsc --noEmit across packages
|
|
|
|
|
pnpm typecheck
|
|
|
|
|
|
|
|
|
|
check: ## lint + typecheck + test
|
|
|
|
|
pnpm check
|
|
|
|
|
|
|
|
|
|
ci-web: ## CI: lint + typecheck + test + build for @openconcho/web
|
|
|
|
|
pnpm ci:web
|
|
|
|
|
|
|
|
|
|
ci-desktop: ## CI: cargo-check for @openconcho/desktop
|
|
|
|
|
pnpm ci:desktop
|
|
|
|
|
|
2026-06-02 13:43:07 -05:00
|
|
|
smoke-docker: ## Local: build the image + smoke-test the /api proxy (Docker required)
|
|
|
|
|
bash docker/smoke-test.sh
|
|
|
|
|
|
2026-06-02 14:02:36 -05:00
|
|
|
up: ## Run the web container from source (dev profile, builds) at :8080
|
|
|
|
|
docker compose --profile dev up -d --build
|
2026-06-02 13:50:27 -05:00
|
|
|
|
2026-06-02 14:02:36 -05:00
|
|
|
prod: ## Run the web container from the published image (prod profile, pulls latest)
|
|
|
|
|
docker compose --profile prod up -d
|
2026-06-02 13:50:27 -05:00
|
|
|
|
2026-06-02 14:02:36 -05:00
|
|
|
down: ## Stop + remove the web container (either profile)
|
|
|
|
|
docker compose --profile dev --profile prod down --remove-orphans
|
2026-06-02 13:50:27 -05:00
|
|
|
|
2026-06-02 13:59:04 -05:00
|
|
|
clean: down ## down + remove the locally built image
|
|
|
|
|
-docker image rm openconcho-web:local
|
|
|
|
|
|
2026-05-03 17:18:09 -05:00
|
|
|
install: ## pnpm install (no playwright)
|
2026-04-27 11:20:47 -05:00
|
|
|
pnpm install
|