# Build the application all: deps build deps: go mod tidy go install github.com/a-h/templ/cmd/templ@latest build: echo "Building..." tailwindcss -o server/web/assets/styles.css templ generate go build -o main.out server/main.go # Run the application run: go run main.go # Test the application test: echo "Testing..." go test ./tests/... -v # Clean the binary clean: echo "Cleaning..." rm -f main.out rm -rf sessions/* rm -rf storage/* dev: make -j3 templ-dev tailwind-dev watch templ-dev: templ generate --watch --proxy="http://localhost:8080" --open-browser=false tailwind-dev: tailwindcss -o server/web/assets/styles.css -i input.css --watch # Live Reload watch: @if command -v air > /dev/null; then \ air; \ echo "Watching...";\ else \ read -p "Go's 'air' is not installed on your machine. Do you want to install it? [Y/n] " choice; \ if [ "$$choice" != "n" ] && [ "$$choice" != "N" ]; then \ go install github.com/air-verse/air@latest; \ air; \ echo "Watching...";\ else \ echo "You chose not to install air. Exiting..."; \ exit 1; \ fi; \ fi .PHONY: all build run test clean