
This commit adds a complete Go implementation of the Todo application. The application uses Gin framework for the web server, GORM for database access, and SQLite for storage. Key features: - Todo CRUD operations with the same API endpoints - Health check endpoint - Database migrations - Tests for models, services, and API handlers - Documentation for the API - Configurable settings
36 lines
484 B
Makefile
36 lines
484 B
Makefile
.PHONY: build run clean test
|
|
|
|
# Build variables
|
|
BINARY_NAME=go-todo-app
|
|
MAIN_PATH=./cmd/api
|
|
|
|
# Default target
|
|
all: build
|
|
|
|
# Build the application
|
|
build:
|
|
go build -o $(BINARY_NAME) $(MAIN_PATH)
|
|
|
|
# Run the application in development mode
|
|
run:
|
|
go run $(MAIN_PATH)/main.go
|
|
|
|
# Clean build artifacts
|
|
clean:
|
|
go clean
|
|
rm -f $(BINARY_NAME)
|
|
|
|
# Run tests
|
|
test:
|
|
go test -v ./...
|
|
|
|
# Format code
|
|
fmt:
|
|
go fmt ./...
|
|
|
|
# Check for issues
|
|
vet:
|
|
go vet ./...
|
|
|
|
# All-in-one check
|
|
check: fmt vet test |