.PHONY: all build-frontend build-go clean release run lint scan check format test dev BINARY_NAME=software-station FRONTEND_DIR=frontend BUILD_DIR=build all: build-frontend build-go dev: @echo "Starting development environment..." @pnpm --prefix $(FRONTEND_DIR) dev & go run main.go build-frontend: cd $(FRONTEND_DIR) && pnpm install && pnpm build build-go: go build -o $(BINARY_NAME) main.go release: build-frontend CGO_ENABLED=0 go build -ldflags="-s -w" -o $(BINARY_NAME) main.go @echo "Release build complete: $(BINARY_NAME)" run: all ./$(BINARY_NAME) format: go fmt ./... cd $(FRONTEND_DIR) && pnpm run format lint: go vet ./... cd $(FRONTEND_DIR) && pnpm run lint scan: gosec ./... check: cd $(FRONTEND_DIR) && pnpm run check test: go test -v -coverpkg=./... ./... clean: rm -rf $(FRONTEND_DIR)/build rm -f $(BINARY_NAME) rm -f coverage.out