Community software for fixing things - a web application built with Go, PostgreSQL, and Tailwind CSS.
- cmd/ - Application binaries/entrypoints
- web/ - HTTP handlers, templates, and web-facing code
- engine/ - Business logic, repositories, and database operations
The application uses:
- Ent ORM with PostgreSQL
- Authboss v3 for authentication
- Tailwind CSS for styling
- Cobra for CLI commands
Install the following dependencies:
- Go 1.24+: Download Go
- Docker & Docker Compose: Install Docker
- Air (for hot reload):
go install github.com/cosmtrek/air@latest - Flyctl (for deployment):
brew install flyctl
-
Clone and setup:
git clone <repository-url> cd fixit
-
Start the database:
docker-compose up -d
-
Generate Ent code:
go generate ./engine/ent
-
Install dependencies:
go mod download
-
Run with hot reload:
air
Or run directly:
go run cmd/server/main.go
- PostgreSQL runs in Docker via
docker-compose.yml - Primary keys use UUIDv7 (application-generated)
- Integration tests use separate
fixit_testdatabase
# Run integration tests
go test ./web/integration -v
# Run all tests
go test ./...# Generate Ent schema code
go generate ./engine/ent