Build habits. Track progress. Achieve goals.
🌐 Open-Source | 🔄 Cross-Platform
Habistat is a free and open-source habit tracker focused on privacy and simplicity. It helps you build good habits, break bad ones, and track daily activity, with your data fully under your control.
An alternative to apps like Everyday, Habitify, and Habitica, it is built with the lightweight Tauri framework and runs smoothly on Android, iOS, Windows, macOS, and in any modern browser.
Tired of bloated apps and shaky privacy policies? Habistat keeps it simple. Inspired by "Don't Break the Chain," it turns habit tracking into a daily checkmark ritual.
Visit: habistat.app 👈
Note
This app is currently in its alpha development stage and may not be stable until future versions. The currently available versions are Windows and web, with other versions coming soon.
- Timed Sync (Phase 3.8): Background scheduler (every 5 minutes), starts/stops via layout; auth subscription priming to avoid unnecessary full syncs. Added
setFirstAppOpenAtIfMissing
for accurate first-open tracking. - Fireworks on Completion: New fireworks effect with single-explosion support, triggered on habit completion for delightful feedback.
- Smarter Sync & Auth: Unified
SyncStatus
component, proactive sync after sample data generation, and token refresh when auth isn't ready to prevent deadlocks. - Faster Reordering: Emoji drag handles, batch writes, resequencing, and paused animations during drag; clearer dropzones.
- Activity Calendar Refresh: Single-row layout, placed above calendars; titles with themed fading background and dashed border.
- Emoji Rendering: Noto Color Emoji is now enabled by default; removed the per-user toggle. CSS consolidated between
app.css
andui.css
.
See full details in the CHANGELOG.
- ✅ Positive & 🚫 Negative Habits: Keep track of what to do and what to avoid.
- 📊 Dashboard & 🎉 Visuals: View your trends and progress with sleek charts and an activity grid.
- 📅 Custom Calendars: Group habits by themes.
- 🛜 Offline-First with 🔄 Optional Sync: Fully functional offline and sync across devices only if you choose.
- 🔒 Full Data Portability: Easily import or export your habit history anytime, no restrictions.
- 📱 Clean, Adaptive UI: Enjoy light/dark modes, multilingual support, and a stylish design built with SvelteKit, Tailwind CSS, and shadcn-svelte.
- Create a Calendar: Name it (e.g., Hobbies, Fitness, Negative) and pick a color.
- Add Habits: Label them, choose positive or negative, and set timers (optional).
- Track & Grow: Check off daily.
Habistat is built with a modern and robust technology stack:
- Package Manager: Bun v1.2
- Core Framework: Tauri v2 (Rust backend, web frontend)
- Frontend: SvelteKit v2 (Svelte v5)
- Styling: Tailwind CSS v4
- UI Components: shadcn-svelte
- Icons @lucide/svelte
- Local Database: SQLite via Drizzle ORM
- Cloud Sync & Backend: Convex
- Authentication: Clerk (OAuth with Google, etc.) via svelte-clerk
- Internationalization: svelte-i18n
- Utilities:
habistat/
├── Docs/ # Documentation & development guides
├── src/ # Main SvelteKit application
│ ├── convex/ # Convex backend functions & schema
│ ├── i18n/ # Internationalization files
│ ├── lib/
│ │ ├── components/ # Svelte UI components
│ │ ├── db/ # Database client & schema
│ │ ├── hooks/ # Custom Svelte hooks
│ │ ├── services/ # Business logic & data services
│ │ ├── stores/ # Svelte stores for state management
│ │ └── utils/ # Utility functions
│ ├── params/ # SvelteKit parameter matchers
│ ├── routes/ # SvelteKit pages & API routes
│ │ ├── dashboard/ # Main dashboard pages
│ │ ├── settings/ # Settings page
│ │ ├── stats/ # Statistics page
│ │ └── premium/ # Premium features page
│ ├── app.html # Main HTML template
│ └── hooks.{client,server}.ts # SvelteKit hooks
├── src-tauri/ # Tauri Rust backend
│ ├── src/ # Rust source code
│ ├── capabilities/ # Tauri capabilities configuration
│ └── Cargo.toml # Rust dependencies
├── static/ # Static assets (icons, images, etc.)
├── migrations/ # SQLite database migrations
└── scripts/ # Build and utility scripts
To view the complete file structure, refer to file-structure.txt.
- Website: https://www.habistat.app
- Creator: Ilya Aizenberg
- Issue Tracker: https://github.com/ilyaizen/habistat/issues
- Changelog: CHANGELOG.md
This project is licensed under the GNU AGPL v3. See the LICENSE file for details.
Happy tracking! 😎