Inspiration
As someone deeply interested in Linux system tools and building for the command line, I wanted to create something practical, lightweight, and personal. While journaling apps exist, they’re often bloated or GUI-based. I asked myself:
“What if health tracking could live right in the terminal — as a native-feeling Linux tool?”
That idea led to careLog — a CLI-based health journaling system that helps users log, view, filter, and analyze their daily wellness directly from the terminal.
What it does
careLog is a command-line health journal that lets users:
lognew entries with optional tags (e.g.,--tag mood)viewall past logsfilterentries by keywordseditordeletespecific entries interactivelyexportlogs to.txtor.json- See usage
stats(like most active days, common words, total logs)
How we built it
- Language: Pure Python 3 (no external libraries)
- Data storage: CSV file (
logs.csv) - Command parsing:
argparsewith subcommands (log,view,delete, etc.) - Installation: The tool can be made global via a symbolic link in
/usr/local/bin, makingcarelogfeel like a native Linux utility. - Project structure: Modular functions with a simple CLI interface and flat-file storage
Challenges we ran into
- Making the CLI feel intuitive and robust with limited time
- Implementing interactive deletion/editing from a CSV file
- Designing a tagging system that stays optional and doesn’t break compatibility
- Making the tool system-friendly without building a
.debpackage - Avoiding over-engineering while keeping it flexible for future features
Accomplishments that we're proud of
- Built an actually useful health journaling CLI in under 20 hours
- Clean command-line interface with help menus and subcommands
- Implemented interactive editing and deletion without external tools
- Simulated a real Linux tool via symbolic linking
- Added tagging, export, and stats — all in one lightweight script
What we learned
-How to write clean and modular Python CLI tools using argparse
- How to make a Python script feel like a first-class system command
- How to simulate versioning, deletion, and updates in flat CSV files
- How to push and manage an open-source project via GitHub
What's next for careLog
- Turn the project into a proper
.debpackage forapt install carelog - Add optional encryption for privacy
- Implement syncing across devices (via Git or cloud)
- Create a
TUI(terminal UI) version using something likecurses - Add support for daily/weekly reminders
- Make it compatible with
crontabfor auto-check-ins
Log in or sign up for Devpost to join the conversation.