README file from
GithubRoutine Streaks
Routine Streaks helps you track habits and routines from your Daily Notes.
Your Daily Note checkboxes are the source of truth. The plugin reads tagged tasks such as #routine/morning, calculates streaks from the checked state, and shows your progress in Obsidian widgets, markdown code blocks, and optional Scriptable widgets for iOS.
Screenshots
Routine management
Scriptable widget generator
Pixel pets
Features
- Track routine streaks from Daily Note tasks.
- Manage routines from the plugin settings.
- Add routine templates and insert them into today's Daily Note with a command.
- Support weekday schedules, weekly targets, and repeating intervals.
- Recalculate streaks from Daily Notes at any time.
- Use streak freeze days for sick days, breaks, or planned pauses.
- View progress in the sidebar dashboard.
- Embed widgets in notes with a
routine-streaks-widgetcode block. - Generate Scriptable widget code for iOS.
- Choose pixel pet status art for a playful overview.
How it works
Routine Streaks does not store completion history as the primary data source. Instead:
- Routine definitions and display settings are stored in the plugin data.
- Streak cache is stored in the plugin data and can be rebuilt.
- Completion history is read from Daily Note task checkboxes.
For example:
- [ ] Drink water #routine/morning
- [x] Open the journal #routine/morning
A routine is considered complete for a date when all matching tasks for that routine tag are checked. If a matching task is unchecked later, the next recalculation removes that completion from the streak cache.
Usage
- Enable the plugin in Obsidian.
- Open Settings -> Community plugins -> Routine Streaks.
- Configure your Daily Note folder and date format if needed.
- Create or edit routines.
- Add template items for each routine.
- Run the command Insert routine template to add routine tasks to today's Daily Note.
- Check off the tasks in your Daily Note.
- Open the sidebar dashboard or run Recalculate routine streaks to refresh streaks.
Routine tags
Each routine has a tag. The default routines are:
#routine/morning#routine/evening
You can add your own routines, such as:
#routine/journal#routine/vitamins#routine/reading
Markdown widgets
You can embed a dashboard in a note:
```routine-streaks-widget
widgets:
- overview: Summary
- today_items: Checklist
- routine_cards: All routines
```
The widget reads your current plugin settings and streak cache.
Scriptable widgets
Routine Streaks can generate Scriptable code from the settings screen.
The generated widget reads exported plugin data and shows your selected dashboard, overview, pet, routine cards, today items, or focused routine on iOS.
Privacy
Routine Streaks works locally in your vault. It does not collect telemetry and does not send your notes to an external service.
License
Routine Streaks is released under the 0BSD license.