.PHONY: bootstrap setup test lint fmt fmt-check check build build-bin install dev clean docker hooks

YARN := yarn run

bootstrap:
	@script/bootstrap

setup:
	@script/setup

test:
	@script/test

lint:
	@script/lint

fmt:
	@script/fmt

fmt-check:
	@script/fmt-check

check:
	@script/check

build:
	@$(YARN) tsc

build-bin:
	nix-shell -p bun --run "bun build bin/quak.ts --compile --outfile bin/quak"

install: build-bin
	mkdir -p ~/bin
	cp bin/quak ~/bin/quak
	chmod +x ~/bin/quak

dev:
	@$(YARN) tsc --watch

clean:
	@rm -rf dist coverage .vitest-cache *.tsbuildinfo

docker:
	@script/docker

hooks:
	@script/install-precommit
