FriesI23/mhabit
Table Habit is an app that helps you establish and track your micro habits.
Open-source Flutter habit tracker with smart scoring, WebDAV sync, local-first storage, privacy-focused design, and support for Android, iOS, Windows, macOS, and Linux.
- Dart95.7%
- Python0.9%
- C++0.8%
- Shell0.8%
- CMake0.7%
- Ruby0.6%
- Batchfile0.3%
- Swift0.1%
3 Reviews
Table Habit (mhabit) is an open-source, privacy-first habit tracker built with Flutter. Unlike typical habit apps that only track simple daily streaks, it uses a custom scoring model that quantifies long-term consistency with growth curves for both positive habits and habits you want to break.
The app is completely offline and account-free, keeping data local with optional WebDAV support for syncing across Android, iOS, Windows, macOS, and Linux. The interface follows Material 3 guidelines, featuring collapsible habit grouping, drag-and-drop reordering, custom color swatches, detailed progress charts, and native CSV import from Loop Habit Tracker. It also includes community translations for over 18 languages with full RTL layout support.
For users looking for a polished, cross-platform habit tracker without ads, subscriptions, or cloud lock-in, Table Habit is a solid, well-built choice that respects your personal data.
Table Habit supports micro-habits with positive and negative tracking, scoring, growth charts, search, color coding, and human-readable JSON import and export. WebDAV synchronization gives users control over their data rather than requiring a proprietary account, while the absence of advertising suits a personal-growth tool. The Flutter project’s availability across Android, iOS, macOS, Windows, Linux, F-Droid, major app stores, Flathub, Homebrew, Scoop, and direct releases is particularly impressive.
The next improvements should focus on sync confidence and behavioral transparency. Documentation should explain WebDAV conflict resolution, encryption, credential storage, offline edits, clock differences, and recovery from partial uploads. A visible sync history and “export before repair” flow would protect long-lived habit data. The scoring model should also be explained so users understand how missed days, negative habits, and schedule changes affect results. Table Habit is best for people who want an open, cross-platform habit tracker with portable data, especially users comfortable configuring WebDAV.
Table Habit feels like a thoughtfully built, no-nonsense habit tracker rather than a throwaway side project. The README does a good job showing what the app is about: tracking small daily habits, scoring progress, visualizing trends, organizing habits with colors, syncing through WebDAV, and staying free of ads. I also like that it is available almost everywhere: Android, iOS, macOS, Windows, Linux, F-Droid, Flathub, GitHub releases, and app stores. That kind of distribution takes real maintenance work.
The strongest signal is that the project is alive. It has regular releases, a large commit history, a clear Apache-2.0 license, translation support through Weblate, privacy documentation, screenshots, and platform-specific setup already in place. For an open-source personal productivity app, those details matter because users are trusting it with routines and long-term personal data.
My main suggestion is to make the contributor path easier. The README is useful for users, but a new developer would probably need more guidance on the app architecture, how habit scoring works, how sync is handled, how to run tests, and what parts of the Flutter codebase are most important. A short “developer guide” would make the repo feel much easier to contribute to.
Overall, this is a polished and practical project with strong maintenance signals. The next step is not adding more features as much as making the existing codebase easier for outside contributors to understand.
