Skip to main content

Vikunja

Vikunja — open-source, self-hostable to-do and project management app — packaged for the Hiroba ecosystem.

Overview

This repository ships two Helm charts: vikunja for the workload (Deployment, Service, HTTPRoute) and vikunja-platform for the cross-cutting dependencies (PostgreSQL via CNPG, secrets via External Secrets, observability). The container image is consumed unchanged from docker.io/vikunja/vikunja — we don't maintain a custom build.

Architecture

┌────────────────────────────┐
HTTPRoute ──▶ Service (80) ─▶ Vikunja pod (3456)
│ ├─ /api/v1/info (probe)
│ ├─ /metrics (Prometheus)
│ └─ /app/vikunja/files (PVC or emptyDir)


Postgres (CNPG, vikunja-pg-rw)

Secret `vikunja` ◀── ExternalSecret ◀── ClusterSecretStore
(DB password, JWT secret)

Prerequisites

  • Access to the Kubernetes cluster
  • Helm v3.x installed
  • kubectl configured
  • A parent Gateway (HTTP + HTTPS listeners, TLS configured) — typically from a gateway chart such as hiroba-gateway
  • For the platform chart's defaults: CloudNativePG, External Secrets Operator, Prometheus Operator

Quick start

# Workload
helm install vikunja ./helm/base

# Platform dependencies (Postgres, ExternalSecret, ServiceMonitor)
helm install vikunja-platform ./helm/platform \
--set postgres.enabled=true \
--set externalSecrets.enabled=true \
--set observability.serviceMonitor.enabled=true

See the per-stack pages for full configuration: