92 lines
2.2 KiB
Makefile
92 lines
2.2 KiB
Makefile
# zhealth Makefile
|
|
# Run `make help` to see available commands
|
|
|
|
.PHONY: help build release lint typecheck test clean serve stop
|
|
|
|
# Default target
|
|
help:
|
|
@echo "Available commands:"
|
|
@echo " make serve - Start both backend and frontend servers"
|
|
@echo " make stop - Stop running backend and frontend servers"
|
|
@echo " make build - Build for development"
|
|
@echo " make release - Build optimized production bundle"
|
|
@echo " make migrate - Run database migrations"
|
|
@echo " make seed - Seed database with initial data"
|
|
@echo " make lint - Run linters (Clippy + ESLint)"
|
|
@echo " make typecheck - Type checking (Rust + TypeScript)"
|
|
@echo " make test - Run all tests"
|
|
@echo " make clean - Clean build artifacts"
|
|
|
|
stop:
|
|
@echo "Stopping backend (port 3000) and frontend (port 5173)..."
|
|
-@lsof -ti :3000 | xargs -r kill 2>/dev/null || true
|
|
-@lsof -ti :5173 | xargs -r kill 2>/dev/null || true
|
|
@echo "Servers stopped"
|
|
|
|
# Backend commands
|
|
.PHONY: backend-dev backend-build backend-release backend-lint backend-test migrate seed
|
|
|
|
migrate:
|
|
cd backend && cargo run -- migrate
|
|
|
|
seed:
|
|
cd backend && cargo run -- seed
|
|
|
|
backend-dev:
|
|
cd backend && cargo run -- serve
|
|
|
|
backend-build:
|
|
cd backend && cargo build
|
|
|
|
backend-release:
|
|
cd backend && cargo build --release
|
|
|
|
backend-lint:
|
|
cd backend && cargo clippy -- -D warnings
|
|
|
|
backend-test:
|
|
cd backend && cargo test
|
|
|
|
# Frontend commands
|
|
.PHONY: frontend-dev frontend-build frontend-release frontend-lint frontend-test frontend-install
|
|
|
|
frontend-install:
|
|
cd frontend && npm install
|
|
|
|
frontend-dev:
|
|
cd frontend && npm run dev -- --host 0.0.0.0
|
|
|
|
frontend-build:
|
|
cd frontend && npm run build
|
|
|
|
frontend-release:
|
|
cd frontend && npm run build
|
|
|
|
frontend-lint:
|
|
cd frontend && npm run lint
|
|
|
|
frontend-test:
|
|
@echo "Frontend tests not yet configured"
|
|
|
|
# Combined commands
|
|
|
|
build: backend-build frontend-build
|
|
|
|
release: backend-release frontend-release
|
|
|
|
lint: backend-lint frontend-lint
|
|
|
|
typecheck: backend-lint frontend-lint
|
|
|
|
test: backend-test frontend-test
|
|
|
|
serve:
|
|
@echo "Starting backend (port 3000) and frontend (port 5173)..."
|
|
@cd backend && cargo run -- serve & cd frontend && npm run dev -- --host 0.0.0.0
|
|
|
|
clean:
|
|
cd backend && cargo clean
|
|
cd frontend && rm -rf node_modules dist
|
|
@echo "Cleaned build artifacts"
|
|
|