Skip to main content

A terminal-based productivity and life-tracking system.

Project description

GitHub forks GitHub stars

Habitrax

A terminal-based personal development tracker combining habit building, productivity, and introspection into one unified system.


What is Habitrax?

Habitrax is a CLI app designed to help you:

  • Track your tasks, productivity, and self-discipline
  • Reflect daily with randomized deep questions
  • Monitor progress using gamified stats and leveling
  • Build powerful habits using philosophies from:
    • Deep Work
    • Atomic Habits
    • Slight Edge
    • Think & Grow Rich
    • Shadow Work Journal

You don't just live life — you level through it.


Quickstart

git clone https://github.com/2kDarki/Habitrax.git 
cd Habitrax 
python run.py

Requires Python 3.10+ installed.

That's it — Habitrax runs out-of-the-box.


Philosophy

Most productivity apps force structure on you.
Habitrax does the opposite — it's a sandbox for your goals, actions, and reflections.

  • Every decision is a vote toward your future self
  • Every session is data, analyzed and visualized for self-awareness
  • You define your purpose, rules, and trajectory

Core Modules

  • Session Logging – Track tasks, time, focus, and productivity quality
  • Debrief – Daily introspection with randomized deep questions
  • Soul Work – Gratitude, philosophy, and "Slight Edge" voting
  • Status Window – Gamified dashboard for categories and missions
  • Notebook – Store insights, mantras, or journal entries
  • Statistics – Filter and visualize productivity trends
  • Missions – Self-defined goals with tracked completion
  • Coffer – Manually track your finances
  • Almanack – Define your chief aim and personal commandments

Why Terminal?

  • Built entirely on a smartphone as a learning project
  • No external dependencies or frameworks
  • Made for speed, clarity, and minimalism
  • Focus is on function, not flash — every feature serves personal growth

Tech Stack

  • Language: Python
  • Libraries: None (0 dependencies — 100% built-in modules)
  • Storage: JSON
  • Interface: Terminal-based, menu-driven

Folder Structure

Habitrax/ 
        ├── src/ 
            └── habitrax/    ← App source code
        ├── data/            ← Stored user data (JSON) 
        ├── pyproject.toml   ← Packaging configuration 
        ├── requirements.txt ← Empty (0 dependencies) 
        ├── run.py           ← Entry point 
        ├── README.md        ← You are here
        ├── LICENSE 
        └── .gitignore 

Screenshots

  1. Status Window Status Window
  2. Soul Work module Soul Work module
  3. Debrief questions Debrief questions
  4. Task logging view Task logging view

Data & Privacy

  • All user data is stored locally in JSON files
  • You can back up or migrate manually
  • Future versions may support encryption or SQLite (if you can, you may work on this)

Limitations

  • Minimal CLI interface — designed for speed and simplicity
  • No undo or in-app editing (by design)
  • Manual testing only — no automated tests yet

License

MIT License — Free to use, modify, or build upon. Mention appreciated if published or monetized.


About the Author

Self-taught dev passionate about programming and philosophy. Built this to not just track productivity — but to master the self.

Contributing to Habitrax

Thank you for considering contributing! Here's a simple workflow:

Getting Started

  1. Fork the repo
  2. Clone your fork:
git clone https://github.com/YOUR_USERNAME/Habitrax.git 
cd Habitrax
  • Create a branch for your changes: git checkout -b feat/my-feature
  • Make your changes (code, data, formatting)
  • Stage and commit:
    • git add .
    • git commit -m "Clear, short description"
  • Push your branch: git push origin feat/my-feature
  • Open a Pull Request (PR) on GitHub — describe your change clearly
  • Optional: add a minimal test in tests/

Code Style

  • Keep naming consistent with existing files
  • Minimal formatting: PEP8 recommended, but readability matters most
  • Comments welcome for clarity

Testing

  • There's no automated testing yet
  • Please run python run.py to make sure your changes don't break the app

Suggested First Contributions

Even if you've never seen the code before, here are 2 tasks anyone can try:

  • Improve Debrief Randomization – Add optional filters for categories
  • Add a CLI Shortcut

These tasks are small, self-contained, and won't break the core functionality.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

habitrax-0.2.1.tar.gz (32.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

habitrax-0.2.1-py3-none-any.whl (40.3 kB view details)

Uploaded Python 3

File details

Details for the file habitrax-0.2.1.tar.gz.

File metadata

  • Download URL: habitrax-0.2.1.tar.gz
  • Upload date:
  • Size: 32.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for habitrax-0.2.1.tar.gz
Algorithm Hash digest
SHA256 5f2ce6b1b3cfd7839ee65f62b29331cb1f49dcfb68a9e269da6598f2d134b044
MD5 5a881cbe4313dc25d9ff88f01917de3d
BLAKE2b-256 955290cd031c06d6d51acd05d7ced14b14bbcd41b06446b4dd56b8884076c86f

See more details on using hashes here.

Provenance

The following attestation bundles were made for habitrax-0.2.1.tar.gz:

Publisher: publish.yml on 2kDarki/Habitrax

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file habitrax-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: habitrax-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 40.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for habitrax-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9772107dc94dba6f4bfa2cd81fd9166e6156431d4881c0abbb640691b1c32e65
MD5 ed971fa93287dbc6cc2cf438c83e3586
BLAKE2b-256 5aba231eb8d7ab3a8916866c729259775d3a5434ca0aeac36e3927dae17ccc8e

See more details on using hashes here.

Provenance

The following attestation bundles were made for habitrax-0.2.1-py3-none-any.whl:

Publisher: publish.yml on 2kDarki/Habitrax

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page