Files
bookhoard/Makefile
T
john-okeefe e0b95ba297 Add project guidelines verification script
Created comprehensive verification script to check codebase against PROJECT_GUIDELINES.md

Features:
- Checks for custom CSS (TailwindCSS requirement)
- Detects JavaScript files that should be TypeScript
- Verifies no secrets committed (.env, credentials.json)
- Validates code compiles (go build)
- Finds local binaries (should use container builds)
- Quick checks with clear pass/fail/warning output

Usage:
  make verify-guidelines
  ./scripts/verify-quick.sh

Current codebase status:
  - 12 templates with custom CSS (need Tailwind conversion)
  - 2 .js files in web/static/ (need TypeScript conversion)
  - 1 binary file (./bookhoard)

This addresses the trust issue: AI now has a tool to prove guideline compliance
2026-02-02 09:55:39 -05:00

65 lines
2.0 KiB
Makefile

.PHONY: help test test-integration test-all build build-force clean rebuild logs test-env-up test-env-down
# Default target
help:
@echo "Available targets:"
@echo " make test - Run unit tests"
@echo " make test-integration - Run integration tests with test mode enabled"
@echo " make test-all - Run all tests"
@echo " make build - Build and start containers"
@echo " make build-force - Force rebuild and start containers"
@echo " make clean - Stop and remove containers"
@echo " make rebuild - Clean, rebuild, and start containers"
@echo " make logs - Show container logs"
@echo " make test-env-up - Start containers with test mode enabled"
@echo " make test-env-down - Stop test environment"
# Run unit tests
test:
go test ./... -v -short
# Run integration tests with test mode enabled (avoids rate limiting)
test-integration:
@echo "Running integration tests with TEST_MODE enabled..."
TEST_MODE=true RATE_LIMIT_ENABLED=false go test ./cmd/server/tests -run TestIntegrationAPI -v -timeout 5m
# Run all tests
test-all: test test-integration
# Build and start containers
build:
podman compose up --build -d
# Force rebuild without cache
build-force:
podman compose build --no-cache
podman compose up -d
# Stop and remove containers
clean:
podman compose down -v
# Clean rebuild (remove volumes, rebuild, start)
rebuild: clean build
# Show container logs
logs:
podman compose logs -f
# Start containers with test mode enabled for integration testing
test-env-up:
@echo "Starting containers with test mode enabled..."
TEST_MODE=true RATE_LIMIT_ENABLED=false REQUESTS_PER_MINUTE=1000 podman compose up --build -d
@echo "Waiting for services to be ready..."
sleep 10
@echo "Test environment is ready!"
# Stop test environment
test-env-down:
podman compose down -v
# Verify project guidelines compliance
verify-guidelines:
@echo "Running project guidelines verification..."
@./scripts/verify-quick.sh