Jan Smrcka
Jan Smrcka

Full-stack Engineer

Full-time at ELI · Taking select contracts
Back

HeadBoard

WIP
GoNext.jsPostgreSQLRedisCaddy
HeadBoard dashboard

HeadBoard is a headless feedback platform built for SaaS teams who want native-feeling feedback boards inside their product. Instead of embedding an iframe, customers get React hooks and components they can style themselves.

Why

Every feedback tool (Canny, Nolt, Fider) gives you a hosted page or an iframe. That's fine for a landing page — but if you want feedback integrated natively into your product, you're stuck. HeadBoard fixes this with an SDK-first approach.

Architecture

The backend is a Go API (chi router, pgx) with PostgreSQL and Redis for rate limiting, serving a Next.js admin dashboard. Everything runs on a single VPS (Hetzner CPX21, ~€8/mo) behind Caddy reverse proxy.

VPS (Hetzner CPX21)
├── Go API              :8080
├── Next.js Dashboard   :3000
├── PostgreSQL          :5432
├── Redis               :6379
├── Caddy reverse proxy
├── Sentry (errors)
├── Grafana + Loki (logs)
└── pg_dump → S3 (daily backup)

Key Features

  • Multiple boards per org — Product Feedback, Bug Reports, Feature Requests
  • Feature requests with voting — one vote per user
  • Status workflow — open → planned → in_progress → done → closed
  • Comments — end user and admin replies, internal notes for the team
  • API key management — live/test environments, generated in dashboard
  • End user identification — via external_id with metadata (plan, role, MRR)
  • Metadata filtering — "what do paying customers want?" vs "free users"