HausKlar is a self-hosted, offline-first family organiser with native iOS and web clients.
Public-source note: HausKlar was developed and used privately before being open-sourced. This repository is a sanitised public export. Its original Git history is intentionally omitted because that history contains household and infrastructure information; the first public commit is a source-release boundary, not the beginning of the project.
HausKlar is a personal open-source project, not a hosted SaaS service. It has not been independently security-audited. Medicine features provide reminders only, not medical advice. Finance features are informational and are not financial advice.
- Planning: shared calendar, tasks, reminders, routines, commitments, birthdays, and household briefings.
- Family life: children, meals, grocery lists, inventory, pets, homework, documents, and reviewed capture.
- Offline clients: durable browser and native iOS queues with deterministic conflict handling.
- Optional private modules: Home Assistant, inbound email, Fitness, Finance, notifications, and bounded assistant proposals.
iOS app + extensions ─┐
├── HTTPS/JSON ── FastAPI ── SQLite + private file store
React installable PWA ┘ │
└── optional, operator-configured providers
All examples use fictional data and localhost. Optional integrations are blank and inactive by default.
Requirements: Docker, Docker Compose, OpenSSL, and Make.
make demoThe script generates a local random demo password, prints it once, and binds the service to 127.0.0.1:8001. Reset the fictional data with make reset-demo.
Backend (Python 3.12):
cd server
python3 -m venv .venv
. .venv/bin/activate
python -m pip install -e '.[dev]'
APP_ENV=development JWT_SECRET_KEY=development-only-change-me python -m uvicorn app.main:app --reload --port 8001PWA:
cd server/web
npm ci
npm run deviOS simulator:
Requires Xcode 26 or newer and XcodeGen. CI currently validates the project with Xcode 26.2.
cd ios/HausKlar
cp Config/Local.xcconfig.example Config/Local.xcconfig
xcodegen
open HausKlar.xcodeprojSet HAUSKLAR_API_BASE_URL in the local xcconfig when the simulator cannot use the default localhost URL. No Apple signing team is checked in.
Copy .env.example for development. Production mode fails closed when required secrets or URLs are insecure. Integrations are opt-in; external AI is disabled by default. Model output cannot directly change family data: actions are typed, allowlisted, validated, expired, and explicitly confirmed. Arbitrary SQL, URLs, shell commands, and Home Assistant services are prohibited. Fitness and Finance data are owner-private unless the owner deliberately shares a bounded result.
See deployment, optional integrations, privacy, security, and the threat model.
HausKlar was developed with extensive AI-agent assistance. The repository includes tests, safety constraints, and agent instructions used to review and evolve the system; it does not claim that every line was manually authored.
Contributions are welcome under CONTRIBUTING.md and the Code of Conduct. Licensed under Apache-2.0. Copyright 2026 Dominic Barker / @DJBarker87.