Initial commit: Custom Start Page application with authentication and DynamoDB storage

This commit is contained in:
2026-02-18 22:06:43 -05:00
commit 7175ff14ba
47 changed files with 7592 additions and 0 deletions

57
Makefile Normal file
View File

@@ -0,0 +1,57 @@
.PHONY: help build run test clean dev db-start db-stop db-reset
# Go binary path
GO := /usr/local/go/bin/go
help: ## Show this help message
@echo 'Usage: make [target]'
@echo ''
@echo 'Available targets:'
@awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {printf " %-15s %s\n", $$1, $$2}' $(MAKEFILE_LIST)
build: ## Build the application
$(GO) build -o bin/server cmd/server/main.go
run: ## Run the application
$(GO) run cmd/server/main.go
test: ## Run all tests
$(GO) test -v ./...
test-coverage: ## Run tests with coverage
$(GO) test -v -coverprofile=coverage.out ./...
$(GO) tool cover -html=coverage.out -o coverage.html
clean: ## Clean build artifacts
rm -rf bin/
rm -f coverage.out coverage.html
dev: db-start ## Start development environment
@echo "Starting development server..."
$(GO) run cmd/server/main.go
db-start: ## Start DynamoDB local
@echo "Starting DynamoDB local..."
docker-compose up -d dynamodb-local
@echo "DynamoDB local is running on http://localhost:8000"
db-stop: ## Stop DynamoDB local
@echo "Stopping DynamoDB local..."
docker-compose down
db-reset: ## Reset DynamoDB local data
@echo "Resetting DynamoDB local..."
docker-compose down -v
docker-compose up -d dynamodb-local
deps: ## Download dependencies
$(GO) mod download
$(GO) mod tidy
fmt: ## Format code
$(GO) fmt ./...
lint: ## Run linter
golangci-lint run
.DEFAULT_GOAL := help