HELLEDGER

HELLEDGER

Docker app from Kreuzbube88's Repository

Overview

HELLEDGER is a self-hosted, privacy-first household finance tracker. All data stays on your server in a local SQLite database β€” no cloud, no subscriptions.

Transactions & Accounts
Transactions β€” Manual income, expense, and transfer entries with category and account assignment
Accounts β€” Multiple bank accounts per household with roles: Main, Fixed Costs, Variable, Savings, Separate
Categories β€” Income, fixed cost, and variable expense categories with subcategories and color coding
CSV / OFX / QFX Import β€” Bulk transaction import with column mapping and duplicate detection
Global Search β€” Full-text search across all transactions

Budget & Planning
Fixed Costs β€” Recurring income, expenses, and savings transfers with configurable intervals; auto-booking each month; reserve tracking
Forecast β€” 12-month projection based on fixed costs with cumulative savings balance
Savings Goals β€” Target amount and date, linked savings account, progress tracking

Loans
Loan Management β€” Consumer loans and mortgages with full amortization schedules
Extra Payments β€” One-time and recurring extra payments; term-shortening or payment-reduction effect
Loan KPIs β€” Interest saved, months saved, current balance, payoff date; CSV export

Reporting & Overview
Dashboard β€” Monthly KPIs, account balances by role, expense donut chart, savings goals widget
Month View β€” Detailed monthly breakdown by category with KPI bar and available balance split
Year View β€” Full-year category x month grid with totals
Reports β€” Expense by category, stacked monthly trend chart, balance history

Infrastructure
Backups β€” Scheduled and manual backups with configurable retention
Admin Panel β€” SMTP, OIDC (Authentik, Keycloak), user management, registration control
Multi-Household β€” Separate financial spaces; users can belong to multiple households
PWA β€” Installable on desktop and mobile, works offline
i18n β€” German (default) and English, per-user language preference
Dark/Light Mode β€” Manual toggle

Documentation: https://github.com/Kreuzbube88/helledger/tree/main/docs

HELLEDGER

Self-Hosted Household Budget Ledger for Homelab

Status Python License Platform


HELLEDGER is a self-hosted household budget ledger built for homelab enthusiasts. It lets you manage multiple accounts and households, track income and expenses by category, and get a clear picture of what comes in, what goes out, and what's left β€” month by month and year by year. Everything runs in a single Docker container with a local SQLite database. No cloud, no subscription, full data ownership.

⚠️ HELLEDGER was built entirely with AI (Claude.ai). It is not designed for public internet exposure and should only be used within a local network / homelab.


✨ Features

πŸ’³ Transactions & Accounts

  • Transactions β€” Manual income, expense, and transfer entries with category and account assignment
  • Accounts β€” Multiple bank accounts per household with roles: Main, Fixed Costs, Variable, Savings, Separate (excluded from calculations)
  • Categories β€” Income, fixed cost, and variable expense categories with subcategories and color coding
  • CSV / OFX / QFX Import β€” Bulk transaction import with column mapping and duplicate detection
  • πŸ” Global Search β€” Full-text search across all transactions

πŸ“… Budget & Planning

  • Fixed Costs β€” Recurring income, expenses, and savings transfers with configurable intervals (monthly, quarterly, semi-annual, annual); auto-booking each month; reserve tracking for non-monthly costs
  • πŸ“ˆ Forecast β€” 12-month projection based on fixed costs with cumulative savings account balance
  • 🎯 Savings Goals β€” Target amount and date, linked savings account, progress tracking

🏦 Loans

  • Loan Management β€” Consumer loans and mortgages with full amortization schedules
  • Extra Payments β€” One-time and recurring extra payments with term-shortening or payment-reduction effect
  • Loan KPIs β€” Interest saved, months saved, current balance, estimated payoff date
  • πŸ“€ CSV Export β€” Full amortization schedule export

πŸ“Š Reporting & Overview

  • Dashboard β€” Monthly KPIs (savings rate, debt-to-income ratio, reserve coverage), animated account balances by role, expense donut chart, savings goals widget, expiring fixed cost warnings
  • Month View β€” Detailed monthly breakdown by category (income / fixed / variable / savings transfers) with KPI bar and available balance split by account role
  • Year View β€” Full-year category Γ— month grid with totals
  • Reports β€” Expense by category, monthly trend as stacked bar (fixed + variable + savings), balance history

βš™οΈ Infrastructure

  • πŸ’Ύ Backups β€” Scheduled and manual backups to a configurable backup volume with retention policy
  • πŸ” OIDC Login β€” Optional SSO via any OIDC provider (Authentik, Keycloak, etc.); native login always available
  • πŸ‘₯ Multi-Household β€” Separate financial spaces per household; users can belong to multiple households
  • πŸ›‘οΈ Admin Panel β€” User management, SMTP config, OIDC config, registration control
  • πŸ“± PWA β€” Installable on desktop and mobile; offline shell via service worker
  • 🌍 i18n β€” German (default) and English; per-user language preference
  • πŸŒ™ Dark / Light Mode β€” Manual toggle

πŸš€ Installation

Unraid Community Apps (recommended)

  1. Open the Apps tab in Unraid
  2. Search for HELLEDGER
  3. Click Install and follow the template

HELLEDGER will be available at http://YOUR-UNRAID-IP:3000.

Docker Compose

services:
  helledger:
    image: ghcr.io/kreuzbube88/helledger:latest
    container_name: helledger
    restart: unless-stopped
    ports:
      - "3000:3000"
    environment:
      - SECRET_KEY=your_secret_here   # openssl rand -hex 32
      - TZ=Europe/Berlin
    volumes:
      - /mnt/user/appdata/helledger:/data
      - /mnt/user/appdata/helledger/backups:/backups

Docker Run

docker run -d \
  --name helledger \
  --restart unless-stopped \
  -p 3000:3000 \
  -v /path/to/appdata:/data \
  -v /path/to/backups:/backups \
  -e SECRET_KEY=$(openssl rand -hex 32) \
  ghcr.io/kreuzbube88/helledger:latest

🏁 Quick Start

After installation, open the web UI at http://YOUR-IP:3000. The first registered user becomes the admin automatically. Head to the Admin panel to configure SMTP, OIDC, default language, and registration settings.


πŸ“š Documentation

Full documentation is available in the docs/ folder in both German and English, covering installation, first steps, import/export, backups, and admin configuration.


πŸ”§ Configuration

Variable Required Default Description
SECRET_KEY Yes β€” JWT signing key β€” use openssl rand -hex 32
DATABASE_PATH No /data/helledger.db Absolute path to the SQLite database file
PORT No 3000 HTTP port the app listens on
TZ No UTC Container timezone
DEFAULT_LANGUAGE No de UI language (de, en)
ALLOW_REGISTRATION No true Allow new user self-registration
BACKUP_INTERVAL_HOURS No 24 Hours between automatic backups (0 to disable)
LOG_LEVEL No INFO Uvicorn log level

All SMTP and OIDC configuration lives in the Admin UI and is stored in the database.


πŸ“„ License

GPL-3.0 Β© HEL*Apps

Install HELLEDGER on Unraid in a few clicks.

Find HELLEDGER in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.

Open the Apps tab on your Unraid server Search Community Apps for HELLEDGER Review the template variables and paths Click Install

Related apps

Details

Repository
ghcr.io/kreuzbube88/helledger:latest
Last Updated2026-07-17
First Seen2026-04-23

Runtime arguments

Web UI
http://[IP]:[PORT:3000]
Network
bridge
Shell
sh
Privileged
false

Template configuration

Web UI PortPorttcp

Port for the HELLEDGER web interface

Target
3000
Default
3000
Value
3000
DataPathrw

Database and persistent configuration storage

Target
/data
Default
/mnt/user/appdata/helledger
Value
/mnt/user/appdata/helledger
BackupsPathrw

Backup storage path

Target
/backups
Default
/mnt/user/appdata/helledger/backups
Value
/mnt/user/appdata/helledger/backups
PUIDVariable

User ID the app runs as (Unraid default: 99)

Default
99
Value
99
PGIDVariable

Group ID the app runs as (Unraid default: 100)

Default
100
Value
100
SECRET_KEYVariable

Required: random secret for session encryption. Generate with: openssl rand -hex 32

TZVariable

Container timezone

Default
Europe/Berlin
Value
Europe/Berlin
DEFAULT_LANGUAGEVariable

Default UI language (de or en)

Default
de
Value
de
DATABASE_PATHVariable

Path to SQLite database file inside the container

Default
/data/helledger.db
Value
/data/helledger.db
BACKUP_INTERVAL_HOURSVariable

Hours between automatic backups (0 to disable)

Default
24
Value
24
ALLOW_REGISTRATIONVariable

Allow new user self-registration

Default
true
Value
true