selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

OpenHabitTracker logo

Self-host OpenHabitTracker

1.2.5

Cross-platform habit tracker with self-hosted sync

ReleaseOpen SourceGPL-3.0
docker-compose up -d
Updated13 hours ago
LanguageC
Setup difficultyModerate
MobileNative app
ThemeDark mode
Stars
304
Port
5050 (HTTP web UI and API for self-hosted sync server)
Docker
jinjinov/openhabittracker
Settings sidebar with dark mode, theme, start page and display togglesNotes list with Markdown rendered in placeTask list with planned dates and checklistsData sidebar with export, import, and online sync loginPhone notes list with Markdown renderedPhone task list with planned datesPhone habit list with interval ratiosPhone settings with dark mode and theme togglesPhone data sidebar with export, import, and online sync

What is OpenHabitTracker?

OpenHabitTracker is a free, open-source application that unifies notes, tasks, and habit tracking. It operates across multiple platforms with zero advertisements, tracking, accounts, or subscription fees. Your information remains on your own hardware and only synchronizes with a server you control through Docker. Capabilities include Markdown notes displayed directly in lists, tasks that support scheduled dates, durations, checklists, and timers, habits tracked by how overdue they are relative to their intervals rather than by streaks, two dozen themes with both dark and light variants, complete keyboard navigation and screen-reader compatibility, twenty language translations, import and export across several formats including Google Keep, and comprehensive statistics with visual charts. The synchronization server runs as a Blazor Server application inside Docker, listening on port 5050 by default, and is configured through environment variables for the administrator username, email, password, and JWT signing secret.

Should you self-host OpenHabitTracker?

OpenHabitTracker scores 52/100 on selfhost.directory (how scoring works) and ranks #9 of 31 in Health & Fitness. It has 304 GitHub stars.

It shipped 6 stable releases in the past year. The latest, 1.2.5, came out on 27 September 2026. New versions land roughly every 5 weeks.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is GPL-3.0-licensed and written mostly in C.

Its closest alternative on selfhost.directory is shabitica (43/100, 190 stars). OpenHabitTracker scores higher overall. See OpenHabitTracker vs shabitica side by side.

Features

  • Accessibility
  • Advanced search/filter/sort
  • Categories and priorities
  • Customizable UI
  • Habit Tracking
  • Import/Export
  • Markdown Notes
  • Multi-language
  • Notifications
  • REST API
  • Self-hosted sync
  • Statistics and charts
  • Task Management

OpenHabitTracker README

How to install OpenHabitTracker

Install OpenHabitTracker with Docker

Environment variables
APPSETTINGS_USERNAME, APPSETTINGS_EMAIL, APPSETTINGS_PASSWORD, APPSETTINGS_JWT_SECRET, TZ
  1. Open Docker Desktop and make sure it shows Engine running
  2. Open a terminal in the folder containing your .env and docker-compose.yml
  3. Run: docker-compose up -d
  4. Open http://localhost:5050/login in a browser to confirm the server is running
  5. Find this machine's IP address:
    • Windows: ipconfig
    • Mac / Linux: ifconfig

Run the self-hosted sync server on Docker Desktop (Windows/Mac)

How to configure OpenHabitTracker

  • APPSETTINGS_EMAILadmin@admin.comEmail for the self-hosted sync server admin account

    Email for the self-hosted sync server admin account

  • APPSETTINGS_JWT_SECRETJWT secret key for token signing (generate with openssl rand -base64 32)

    JWT secret key for token signing (generate with openssl rand -base64 32)

  • APPSETTINGS_PASSWORDadminPassword for the self-hosted sync server admin account

    Password for the self-hosted sync server admin account

  • APPSETTINGS_USERNAMEadminUsername for the self-hosted sync server admin account

    Username for the self-hosted sync server admin account

  • TZEurope/BerlinTimezone for the container (e.g., Europe/Berlin)

    Timezone for the container (e.g., Europe/Berlin)

    values: List of tz database time zones

OpenHabitTracker releases & version history

More in Health & Fitness

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…