-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
102 lines (78 loc) · 2.5 KB
/
Makefile
File metadata and controls
102 lines (78 loc) · 2.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
.PHONY: help dev-up dev-down db-migrate db-seed
.PHONY: rust-build rust-check rust-test rust-run rust-watch
.PHONY: py-install py-check py-test py-run py-format py-lint
.PHONY: fe-install fe-dev fe-build fe-preview fe-test fe-format fe-lint fe-check
help:
@echo "Available commands:"
@echo " dev-up Start dev containers (Redis + PostgreSQL)"
@echo " dev-down Stop dev containers"
@echo " db-migrate Run Alembic migrations"
@echo " db-seed Seed database with initial data"
@echo ""
@echo " rust-build Build Rust fetcher"
@echo " rust-check Check Rust code"
@echo " rust-test Run Rust tests"
@echo " rust-run Run Rust fetcher"
@echo " rust-watch Run Rust fetcher with cargo-watch"
@echo ""
@echo " py-sync Sync Python dependencies (uv)"
@echo " py-check Check Python types (mypy)"
@echo " py-test Run Python tests"
@echo " py-run Run Python API server"
@echo " py-format Format Python code"
@echo " py-lint Lint Python code"
@echo ""
@echo " fe-install Install frontend dependencies"
@echo " fe-dev Run frontend dev server"
@echo " fe-build Build frontend for production"
@echo " fe-preview Preview production build"
@echo " fe-test Run frontend tests"
@echo " fe-format Format frontend code (Biome)"
@echo " fe-lint Lint frontend code (Biome)"
@echo " fe-check Run Biome check (lint + format)"
dev-up:
docker compose -f docker-compose.dev.yml up -d
dev-down:
docker compose -f docker-compose.dev.yml down
db-migrate:
cd python-api && uv run alembic upgrade head
db-seed:
cd python-api && uv run python -m python_api.db.seed
rust-build:
cd rust-fetcher && cargo build
rust-check:
cd rust-fetcher && cargo check
rust-test:
cd rust-fetcher && cargo test
rust-run:
cd rust-fetcher && cargo run
rust-watch:
cd rust-fetcher && cargo watch -x run
py-sync:
cd python-api && uv sync
py-check:
cd python-api && uv run mypy src
py-test:
cd python-api && uv run pytest
py-run: py-sync
cd python-api && PYTHONPATH=src uv run uvicorn python_api.main:app --reload --port 8000
py-format:
cd python-api && uv run ruff format .
py-lint:
cd python-api && uv run ruff check . --fix
fe-install:
cd frontend && pnpm install
fe-dev:
cd frontend && pnpm dev
fe-build:
cd frontend && pnpm build
fe-preview:
cd frontend && pnpm preview
fe-test:
cd frontend && pnpm test
fe-format:
cd frontend && pnpm format
fe-lint:
cd frontend && pnpm lint
fe-check:
cd frontend && pnpm check