Beaver Habit Tracker
Self-hosted habit tracking app without "Goals"
Alternative to: streaks, habitica, loop habit tracker
v0.10.0
2026-07-26Try BeaverHabits for iOS: Join the TestFlight beta
How it works: Offline-first sync flow
Highlights
Native-client synchronization
This release adds the backend sync foundation for native clients such as the BeaverHabits iOS app:
- Added authenticated realtime sync over WebSocket at
/api/v1/sync/ws, including acknowledged tick commands and fan-out to other connected devices. - Added lossless habit snapshot export through
GET /api/v1/habits/export, with support for bothUSER_DISKandUSER_DATABASEstorage. - Added habit-list metadata pushes and change broadcasts without overwriting completion records.
- Improved merge behavior so imports preserve existing data, explicit
nullnotes sync correctly, and web-originated changes reach native clients.
Reliability and maintenance
- Updated dependencies and expanded health-check coverage.
- Replaced bare exception handlers so shutdown and interrupt signals are not swallowed.
What’s Changed
- chore: update dependencies and health checks
- feat(api): add native snapshot export and realtime ticks (#215)
- feat(sync): add snapshot export, habit-list pushes, and safer cross-device merging (#216)
- fix: narrow bare exception handlers by @fazalpsinfo-cmyk (#217)
Full Changelog: https://github.com/daya0576/beaverhabits/compare/v0.9.1…v0.10.0