Career Growth Tracking
Never lose track of your learning journey. mine grow is a low-friction activity log
that compounds into streaks, goal progress, and a self-assessed skill picture — all local,
all yours.
Key Capabilities
Section titled “Key Capabilities”- Learning goals — set goals with optional deadline and target (e.g. 50 hrs of Rust)
- Activity log — log time spent learning, tagged to a goal and/or skill
- Streak tracking — consecutive calendar days with at least one activity logged
- Grace period — logging yesterday but not yet today keeps your streak alive
- Skill radar — self-assess skill levels 1–5 rendered as
●●●○○ - Weekly review — summary of activities, goal progress, and streak for the week/month
- Dashboard — at-a-glance view of streak, active goals, and top skills
Quick Example
Section titled “Quick Example”# Add a learning goal (target in minutes, since log --minutes is always minutes)mine grow goal add "Learn Rust" --deadline 2026-06-01 --target 3000 --unit mins
# Log a learning sessionmine grow log "Read The Rust Book ch. 3" --minutes 45 --goal 1 --skill Rust
# Check your streakmine grow streak
# Self-assess a skillmine grow skills set Rust 3
# Weekly summarymine grow reviewHow It Works
Section titled “How It Works”Goals have an optional target value and unit (e.g. mins, sessions). The --unit
flag is a display label — --target must be expressed in the same unit you log.
Since mine grow log --minutes always tracks minutes, use --unit mins and set your
target in minutes (e.g. --target 3000 for ~50 hours). For session-based goals, use
--unit sessions and set --target to the number of sessions.
Progress is tracked automatically: every mine grow log that references a goal
accumulates its minutes toward current_value. You can mark goals complete with
mine grow goal done <id>.
Activity Log
Section titled “Activity Log”Each log entry captures a note, duration in minutes, an optional goal link, and a skill tag.
The --minutes flag defaults to the grow.default_minutes config value (if set) or 0.
Streaks
Section titled “Streaks”A streak counts consecutive calendar days with at least one logged activity. If you logged yesterday but haven’t logged today yet, your streak remains active — this prevents the streak from breaking at midnight before you’ve had a chance to log.
Skill Levels
Section titled “Skill Levels”Skills are stored as a name, category, and integer level (1–5). The level is displayed as filled/empty dots:
| Level | Display |
|---|---|
| 1 | ●○○○○ |
| 3 | ●●●○○ |
| 5 | ●●●●● |
Storage
Section titled “Storage”All data is stored in the mine SQLite database. Three tables are created automatically:
grow_goals, grow_activities, grow_skills. No cloud sync — local first.
Configuration
Section titled “Configuration”Add to ~/.config/mine/config.toml:
[grow]default_minutes = 30 # Default session length when --minutes is not set