Skip to content

PoolVibes

Pool maintenance management app built with Go, following Domain-Driven Design patterns with a Datastar hypermedia frontend.

Features

  • Water Chemistry — Log pH, chlorine, alkalinity, CYA, calcium hardness, and temperature with automatic out-of-range highlighting.
  • Task Scheduling — Create recurring maintenance tasks that auto-generate the next occurrence on completion.
  • Equipment Tracking — Track pool equipment with warranty status and service history.
  • Chemical Inventory — Monitor chemical stock levels with low-stock alerts and quick-adjust buttons.

Quick Start

go build -o poolvibes .
./poolvibes serve

Open http://localhost:8080 to access the app.

Tech Stack

Component Technology
Language Go 1.25+
CLI Cobra + Viper
Router Go http.ServeMux (method-based routing)
Frontend Datastar (SSE-driven reactive UI)
CSS Bulma 1.0.4
Database SQLite via modernc.org/sqlite (pure Go, no CGO)
Migrations golang-migrate with embedded SQL
Architecture Domain-Driven Design