Local habit tracker
Manually mark your own target dates. Unrecorded and outside-target dates are separate; no inferred success. Routine≤100 · Target dates/Marked dates≤366
- Runs in your browser
- No upload
- Check before download
Names, notes and plans stay in this browser. No account, calendar connection or sending. Save only when you explicitly choose it.
Manually mark your own target dates. Unrecorded and outside-target dates are separate; no inferred success. Routine≤100 · Target dates/Marked dates≤366
Questions
Limits:100rows (rosters64/50 as shown),256KiB backup,30,000text units,100,000search visits,20second worker deadline,40PDF pages/8MiB. PDF uses local Liberation Sans with actual glyph checks; no RTL/complex shaping. Unsupported print text remains in the backup. Removing a row removes its linked assignments; editing/reordering preserves positional identities. Roster/draw changes clear tournament results. Roster/reference names must be unique for generation; incomplete drafts may repeat them.
Device storage is unencrypted and may be cleared or seen by other users of this browser. Keep a portable backup. Load/Clear never contacts a service.
Liberation Sans · SIL OFL1.1@libpdf/core · MITDevice storage is unencrypted and may be cleared or seen by other users of this browser. Keep a portable backup. Load/Clear never contacts a service.
How to use
- Add
Add routines with explicit target dates, and mark only the dates you have actually recorded.
- Create plan
Try this concrete example: targets[Nov2,Nov3,Nov4],marked[Nov2] → target3,completed1,unrecorded2
- Export backup
Review marks that fall outside the target dates separately. A target date with no record is not automatically a failed habit.
Questions
Are target dates generated from a recurrence?
No. You supply the actual target dates, and the summary counts where they overlap with your manual marks.
What should I correct before generating?
Use real, unique ISO dates. Duplicate dates within either list are rejected.
What does this output not establish?
No reminders, inferred streaks, health assessment or account history across devices.
Local PDF sheets use @libpdf/core0.5.1 (MIT) and Liberation Sans. Copyright notice and original license · Original Liberation font license (SIL OFL1.1)