30+ projects, self-hosted
My projects
A selection of self-built and self-hosted projects — from an HR system to an e-scooter fleet backend.
StudyLife
StudyLifeStudy organizer with calendar, focus timer and learning goals as a Blazor WebAssembly web app. Passwordless passkey login, 26 languages and optional Home Assistant integration.
OpenSSF Best Practices SilverStudyLife AI
StudyLifeAI service for StudyLife: RAG-powered study assistant with agentic actions (LangGraph + FastAPI), source-cited answers over your own notes and an automated RAGAS eval pipeline in CI. Self-hosted on k3s with local LLMs via Ollama.
StudyLife MCP
StudyLifeMCP server exposing StudyLife data (courses, sessions, notes, goals) to Claude and other MCP clients.
StudyLife App
StudyLifeNative .NET MAUI companion app for StudyLife on iOS, Android, macOS and Windows — offline sync, timers and calendar on the go.
StudyLife Capture
StudyLifeChrome extension (Manifest V3, TypeScript) for saving selected text or whole articles into StudyLife as notes — AI enrichment (course matching, tags, summary) via studylife-ai, full-article extraction via Mozilla Readability, immediate search indexing.
StudyLife Focus
StudyLifeChrome extension (Manifest V3, TypeScript) with two independently-toggleable features for StudyLife's focus timer: Guard blocks or allows sites during a session (allowlist/blocklist), Tune automatically switches Spotify playlists for focus and breaks.
StudyLife Webhooks
StudyLifeWebhook delivery microservice for StudyLife: signed HTTP callbacks on session/goal events to your own automations (Zapier, n8n, Discord, …), multiple independently-named API keys per user.
StudyLife Marketplace
StudyLifePublic catalog of StudyLife add-ons: one JSON manifest per add-on, added via pull request, CI-validated against a JSON schema.
StudyLife Developers
StudyLifeDeveloper portal for registering your own StudyLife add-ons: client ID, scopes and redirect URI backing a generic OAuth-style consent flow against your own instance.
StudyLife CLI
StudyLifeCommand-line client for StudyLife: notes, sessions, course goals, focus timer, courses, study programs, and webhooks from the terminal, with a --json flag for scripting. Registers itself through the same generic OAuth-style flow as the marketplace.
StudyLife Alexa
StudyLifeAlexa Skill backend for StudyLife: ask by voice for courses, focus-timer state, study time, sessions, course goals, study-program progress and notes — and create notes. A self-built OAuth 2.0 server (FastAPI) handles account linking against your own instance, self-hosted on k3s.
StudyLife Telegram
StudyLifeTelegram bot for StudyLife: start, pause and stop the focus timer, today's and this week's hours, next course goal and quick notes in chat, plus session reminders and events via studylife-webhooks. Each chat links its own account through a PKCE consent flow, keys stored encrypted. Self-hosted on k3s.
StudyLife VS Code
StudyLifeVS Code extension for StudyLife: control the focus timer from the editor, study metrics in the status bar and coding time per workspace offered as a study session — never recorded silently. Signs in through the generic OAuth-style flow with an RFC 8252 loopback.
StudyLife New Tab
StudyLifeChrome extension (Manifest V3, TypeScript) that replaces the new tab with a calm, read-only dashboard: hours studied this week, current streak, upcoming sessions, recent activity, course-goal deadlines, programme progress and recent notes. Talks only to your own StudyLife instance — no vendor server, no telemetry.
StudyLife Raycast
StudyLifeRaycast extension for StudyLife: control the focus timer from the launcher and the macOS menu bar — pick a course with a topic, choose the focus mode, pause and stop, with study hours, streak and the countdown to the next course goal right in the menu-bar item.
StudyLife Stream Deck
StudyLifeElgato Stream Deck plugin for StudyLife: a single key for the focus timer (tap to start, pause and resume, hold to stop) with a live countdown and progress ring, plus course switching, preset selection, course-goal countdowns and notes on keys and dials. Finished runs are logged as a session automatically.
StudyLife Display
StudyLifeE-paper dashboard for StudyLife on a Raspberry Pi with a Waveshare 7.5" panel: today's study time, streak, exam countdown, weekly goal and heatmap in five layouts with an auto mode. Web interface for switching layouts and connecting the account, read-only API key, systemd timer, overlay-filesystem-safe, golden-image tests without hardware.
StudyLife Tray
StudyLifeWindows system tray app for StudyLife: shows focus-timer status independent of any browser, right in the taskbar — signs in through the same generic OAuth-style loopback flow as the other native clients. Ships as a signed, single-file .exe GitHub release, no runtime install needed.
StudyLife Discord
StudyLifeDiscord bot for StudyLife: slash commands for courses, focus timer, study time and notes, plus automatic session-start/end announcements via StudyLife's webhook system. Deliberately single-user: one StudyLife account logs in once, and the bot acts on that account for every command. Signed multi-arch images built through its own CI/CD.
StudyLife HACS
StudyLifeHome Assistant integration (HACS) for StudyLife: sessions, timer, streaks and course goals as sensors, including ECTS progress and calendars, plus services to control study sessions from automations.
Zeitbuchungssystem
Web appsTime-tracking and HR system: bookings, vacation & sick-leave management, team calendar and PDF payroll. Auth with 2FA, passkeys and an NFC punch-clock terminal.
Lagersystem
Web appsInventory management with barcode scanning, batch tracking and analytics. ML forecasts, 7 backup providers (S3, Azure, Google Drive, …) and local AI integration via Ollama.
OKAI Fleet Backend
IoTSelf-hosted fleet backend for OKAI e-scooters: custom IoT TCP server, live map with lock/battery status, role-based login with Entra ID SSO, trip tracking and a device simulator.
MowDeck
MowDeckSelf-hosted, manufacturer-independent control centre for robotic mowers: live status and map with heatmaps (coverage, RTK, WLAN, mobile signal, missed spots), starting jobs with your own settings, weather-aware schedules and cameras in the browser. When the mower is stuck, an optional AI assistant analyses both front cameras as a stereo pair and proposes a way out: nothing moves until you approve it, cloud AI runs only after explicit consent, and local models (Ollama) work too. Device states flow over NATS JetStream into a telemetry pipeline that writes to PostgreSQL in batches. Manufacturers plug in as adapters (first: Mammotion LUBA), plus a Home Assistant integration and native iOS and Android app shells. Open source (AGPL-3.0).
OpenSSF Best Practices SilverMowDeck HACS
MowDeckHome Assistant integration (HACS) for MowDeck: every mower as a device with live state over WebSocket, start, pause and dock, cameras, schedules, maintenance actions and notifications. A pure client of the public MowDeck API with an API token and fine-grained permissions.
github-dashboard
Web appsEvery GitHub repository you can reach on one screen: open pull requests and issues, the latest workflow runs, security alerts, unreleased commits and a hygiene score per repository. Multi-user via GitHub OAuth — everyone sees exactly what their own account sees. English and German, self-hosted on k3s.
piwatch
InfrastructureReal-time monitoring for my Raspberry Pi k3s cluster: hardware metrics, live logs, health checks. Highly available with 2 replicas and tested failover.
homelab-hub
InfrastructureTerminal-style link dashboard: live status probes with latency, categories, drag & drop, favicon proxy. Zero-dependency server, deployed behind NGINX Gateway Fabric.
homelab-autodoc
InfrastructureLiving documentation for Kubernetes homelabs: a read-only collector inspects the real state of one or more k3s clusters (deployments, ports, ingress, volumes, policies) and turns it into a wiki-style, drift-aware doc site — facts deterministic from the cluster, prose from an LLM.
lktec-bot
InfrastructureGitHub App with a small Python core that runs the repository automation of my repositories under its own identity with least-privilege tokens. Each module is opt-in per repository policy: Dependabot auto-merge, lock-file refresh including derived files, releases from Conventional Commits with signed assets, and deploy bumps. Open source (Apache-2.0).
OpenSSF Best Practices SilverHouseHoldPlanner
Web appsHousehold management for families and shared flats: to-do lists, meal planner, recipe library, calendar and real-time chat via SignalR.
UnifiProtectDashboard
Smart homeDashboard for UniFi Protect cameras: automatic camera discovery, live snapshots and HLS streams in the browser. Docker-first with a setup wizard.
Lagersystem HACS
Smart homeHome Assistant integration for my inventory system: 29 entities (sensors, binary sensors, buttons) with auto-reload — published as a HACS integration with GitHub releases.
GitLab Monitor HACS
Smart homeHome Assistant integration (HACS) for GitLab: pipelines, issues, merge requests and releases as sensors per repository — works with gitlab.com and self-hosted instances, fully UI-configurable.
ObdGarage
Web appsSelf-hosted, multi-user OBD2 vehicle tracker: automatic trip logging, maintenance scheduling and fuel cost tracking via a read-only ELM327 connection.
NotifyHub
Library.NET library for push notifications behind one channel-agnostic API: Web Push (VAPID), Apple Push, Firebase, webhooks and email — with tests and a demo project.
Homelab & Infrastruktur
My projects don't just run on localhost — they run in production on my own infrastructure.