75 lines
1.7 KiB
Makefile
75 lines
1.7 KiB
Makefile
.PHONY: dev build clean install frontend
|
|
|
|
# Development
|
|
dev:
|
|
wails dev
|
|
|
|
# Build for macOS
|
|
build:
|
|
wails build -clean
|
|
|
|
# Build for macOS (universal binary)
|
|
build-universal:
|
|
wails build -clean -platform darwin/universal
|
|
|
|
# Install frontend dependencies
|
|
frontend:
|
|
cd frontend && npm install
|
|
|
|
# Generate Go bindings
|
|
generate:
|
|
wails generate module
|
|
|
|
# Clean build artifacts
|
|
clean:
|
|
rm -rf build/bin
|
|
rm -rf frontend/dist
|
|
rm -rf frontend/node_modules
|
|
|
|
# Run tests
|
|
test:
|
|
go test ./...
|
|
|
|
# Format code
|
|
fmt:
|
|
go fmt ./...
|
|
cd frontend && npm run format 2>/dev/null || true
|
|
|
|
# Lint
|
|
lint:
|
|
golangci-lint run ./...
|
|
|
|
# Install dependencies
|
|
deps:
|
|
go mod download
|
|
go mod tidy
|
|
cd frontend && npm install
|
|
|
|
# Initialize project (first time setup)
|
|
init: deps frontend
|
|
@echo "Project initialized. Run 'make dev' to start development."
|
|
|
|
# Help
|
|
help:
|
|
@echo "Daily Timer - Makefile Commands"
|
|
@echo ""
|
|
@echo "Development:"
|
|
@echo " make dev - Start development server with hot reload"
|
|
@echo " make build - Build production binary for macOS"
|
|
@echo " make build-universal - Build universal binary (Intel + Apple Silicon)"
|
|
@echo ""
|
|
@echo "Setup:"
|
|
@echo " make init - Initialize project (install all dependencies)"
|
|
@echo " make deps - Install Go and frontend dependencies"
|
|
@echo " make frontend - Install frontend dependencies only"
|
|
@echo ""
|
|
@echo "Maintenance:"
|
|
@echo " make clean - Remove build artifacts"
|
|
@echo " make fmt - Format Go and frontend code"
|
|
@echo " make lint - Run linters"
|
|
@echo " make test - Run tests"
|
|
@echo ""
|
|
@echo "Misc:"
|
|
@echo " make generate - Regenerate Wails bindings"
|
|
@echo " make help - Show this help"
|