Repolode
jofoerster

jofoerster/habitsync

Self-hosted habit tracker with goals, friend challenges, shared habits, and OIDC/SSO login, with a PWA and Android app.

Open-source alternative to:Loop Habit TrackerHabitica

Stars
349
Forks
10
Open issues
16
Last commit
3 months ago

What is it?

HabitSync is a self-hosted habit tracker that lets you define daily, weekly, monthly, or custom-interval habits, including negative habits you want to reduce. It can be deployed with Docker and used through the browser as a progressive web app, or through an Android app.

Beyond personal tracking, it adds social features: shared habits for tracking progress with friends and family, monthly challenges with community voting and leaderboards, and notifications through Apprise when reminders are due or friends overtake your progress. Login can use OIDC providers such as Authelia or Google, or basic-auth users defined in configuration.

Data is stored in an embedded H2 database by default, with PostgreSQL as an alternative. The project offers a Swagger-documented REST API and includes an importer for Loop Habit Tracker data.

Key features

  • 01Daily, weekly, monthly, and custom-interval habits, plus negative habits to reduce
  • 02Shared habits and monthly challenges with leaderboards and voting
  • 03Notifications via Apprise, including reminders and threshold alerts
  • 04OIDC/SSO login with multiple issuers and optional user approval
  • 05Runs as a PWA in the browser, with an Android app available
  • 06REST API with Swagger docs, and import from Loop Habit Tracker

Use cases

  • Keeping a personal habit log on your own server instead of a cloud app
  • Running a habit challenge group with friends or family
  • Connecting habit reminders to Discord, email, or Home Assistant through Apprise
  • Integrating habit data into a Home Assistant setup via the REST API

Quick start

  1. 1

    Start the app locally with Docker

    docker run \ -p 6842:6842 \ -e BASE_URL=http://localhost:6842 \ -e 'APP_SECURITY_BASIC-AUTH-USERS_test=$2y$10$EyuJ.fL/PzCTMMKTONEquuFLxAR8SAzl9iXF2v.qDZYCh5K2m78fS' \ ghcr.io/jofoerster/habitsync:latest
  2. 2

    Open http://localhost:6842 and log in with username test and the password given in the README

  3. 3

    For production, use the Docker Compose setup described in the README

Things to know

  • The Android app is in development and must be kept in sync with the server version.
  • Mobile OIDC redirect URI changed in v0.19.0, so existing mobile setups may need updating.
  • The API is incomplete and may change.

In collections

Topics

#habit-tracking#self-hosted#goal-tracking#oidc#sso#pwa#docker#typescript

FAQ

What is habitsync?
Self-hosted habit tracker with goals, friend challenges, shared habits, and OIDC/SSO login, with a PWA and Android app. HabitSync is a self-hosted habit tracker that lets you define daily, weekly, monthly, or custom-interval habits, including negative habits you want to reduce. It can be deployed with Docker and used through the browser as a progressive web app, or through an Android app.
Is habitsync free to use? What license does it have?
habitsync is open source under the BSD-3-Clause license. Check the license terms before using it in commercial products.
Is habitsync still maintained?
Updated within 6 months. The last commit to habitsync was on Aug 20, 2026.
What can I use habitsync for?
Keeping a personal habit log on your own server instead of a cloud app Running a habit challenge group with friends or family Connecting habit reminders to Discord, email, or Home Assistant through Apprise Integrating habit data into a Home Assistant setup via the REST API
How do I install habitsync?
Start the app locally with Docker: docker run \ -p 6842:6842 \ -e BASE_URL=http://localhost:6842 \ -e 'APP_SECURITY_BASIC-AUTH-USERS_test=$2y$10$EyuJ.fL/PzCTMMKTONEquuFLxAR8SAzl9iXF2v.qDZYCh5K2m78fS' \ ghcr.io/jofoerster/habitsync:latest Open http://localhost:6842 and log in with username test and the password given in the README For production, use the Docker Compose setup described in the README
Where can I get habitsync?
The source code and installation instructions are on GitHub: https://github.com/jofoerster/habitsync

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects