/ Makefile
Makefile
 1  SHELL := /bin/sh
 2  
 3  .PHONY: help setup fmt fmt-check check test docs ci clean package tree
 4  
 5  help:
 6  	@printf '%s\n' 'Lightspeed development targets:'
 7  	@printf '%s\n' '  make setup      Download Gleam dependencies'
 8  	@printf '%s\n' '  make fmt        Format source and tests'
 9  	@printf '%s\n' '  make fmt-check  Check formatting only'
10  	@printf '%s\n' '  make check      Type-check the project'
11  	@printf '%s\n' '  make test       Run unit tests'
12  	@printf '%s\n' '  make docs       Build API documentation'
13  	@printf '%s\n' '  make ci         Run the local CI gate'
14  	@printf '%s\n' '  make clean      Remove build artifacts'
15  	@printf '%s\n' '  make package    Build a Hex tarball locally'
16  
17  setup:
18  	gleam deps download
19  
20  fmt:
21  	gleam format src test
22  
23  fmt-check:
24  	gleam format --check src test
25  
26  check:
27  	gleam check --target erlang
28  
29  build:
30  	gleam build --target erlang --warnings-as-errors
31  
32  test:
33  	gleam test --target erlang
34  
35  docs:
36  	gleam docs build
37  
38  ci: fmt-check check test docs
39  
40  clean:
41  	gleam clean
42  	rm -rf docs/build
43  
44  package:
45  	gleam export hex-tarball
46  
47  tree:
48  	find . -maxdepth 4 -type f | sort