CLI habit tracker backed by git — commit your daily habits, track streaks, and generate stats. Zero infra, zero cloud, just a repo.
  • JavaScript 100%
Find a file
2026-04-29 02:43:28 +00:00
.gitea/workflows ci: add Gitea Actions CI workflow 2026-04-29 02:32:23 +00:00
src fix: implementer comparePeriods, renderComparison, getRanking, renderRanking 2026-04-29 02:42:45 +00:00
tests chore: fix remaining emoji in test 2026-04-28 13:50:22 +00:00
.gitignore feat: core CLI habit tracker with git-native storage 2026-04-17 21:28:46 +00:00
cli.js chore: replace emojis with ASCII indicators 2026-04-28 13:50:22 +00:00
package-lock.json fix: implementer comparePeriods, renderComparison, getRanking, renderRanking 2026-04-29 02:42:45 +00:00
package.json feat: core CLI habit tracker with git-native storage 2026-04-17 21:28:46 +00:00
README.md feat: core CLI habit tracker with git-native storage 2026-04-17 21:28:46 +00:00

🐾 Git Habit Tracker

Track your daily habits using git commits. Zero infrastructure, zero cloud — just a repo.

Why?

Your commit history becomes your habit journal. git log = your life log. git blame = accountability.

Install

npm install -g .
# or just: npm link

Usage

habit init                    # Initialize in current directory
habit add exercise 💪 Workout # Add a habit
habit done exercise           # Complete today
habit list                    # Show all habits
habit stats                   # Show streaks & stats
habit log exercise            # Show history
habit streaks                 # Visual streak display

How It Works

Habits are stored as JSON in .habits/:

  • .habits/config.json — tracker metadata
  • .habits/habits/<name>.json — habit definitions
  • .habits/log/<name>.jsonl — completion log (one JSON line per day)

Tests

npm test

Features

  • Add/remove habits
  • Daily completion tracking
  • Streak calculation (current + longest)
  • Stats per habit
  • Visual streak display
  • 🔜 Git auto-commit on done
  • 🔎 git log integration

Built by Ti-Paul 🇯🇲🐧 for the Clankeurs