-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
47 lines (35 loc) · 1.16 KB
/
Makefile
File metadata and controls
47 lines (35 loc) · 1.16 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
.PHONY: ci install format lint typecheck build build-ui test clean pre-commit pre-push
# Pre-commit gate: fast checks (format + lint)
pre-commit: format lint
@echo "Pre-commit checks passed."
# Pre-push gate: full checks (format + lint + typecheck + test + build)
pre-push: pre-commit typecheck test build
@echo "Pre-push checks passed."
# Full CI (same as pre-push with clean install)
ci: install format lint typecheck build test
@echo "CI passed."
install:
npm ci
format:
npm run format:check
lint:
npm run lint
build-ui:
npm run build -w packages/ui
typecheck: build-ui
npx tsc --noEmit
build: build-ui
npm run build
test:
npm test
clean:
rm -rf dist packages/*/dist node_modules
help:
@echo "Available targets:"
@echo " make pre-commit - Check formatting + lint (run before commit)"
@echo " make pre-push - Full check: format + lint + typecheck + test + build (run before push)"
@echo " make ci - Full CI with clean install"
@echo " make build-ui - Build @forkzero/ui package"
@echo " make build - Build for production"
@echo " make test - Run tests with coverage"
@echo " make clean - Remove dist and node_modules"