Terminal-based journal with timestamp logging
Project description
HoraLog_CLI
A simple, terminal-based journal application that logs sentences with timestamps into per-day YAML files.
Features
- Journal Mode: Type entries with automatic timestamps
- Review Mode: Browse and view past journal entries
- Minimal Dependencies: Only requires
pyyaml - Termux Optimized: Perfect for Android Termux
- Simple & Fast: Does one thing well with minimal clutter
Installation
Standard Installation
# Install from PyPI (when published)
pip install horalog-cli
# Or install from local directory
pip install -e .
Android Termux Installation
# Install Python and pip if not already installed
pkg install python
# Install pyyaml
pip install pyyaml
# Clone or download the project
git clone <repository-url>
cd HoraLog_CLI
# Install in development mode
pip install -e .
Usage
Journal Mode (Default)
Start the application to begin journaling:
horalog-cli
This will:
- Create a
journal/folder if it doesn't exist - Load today's existing entries
- Show a prompt like
[14:30:25] > - Save each entry immediately when you press Enter
- Keep previous entries visible while typing
Review Mode
Browse past journal entries:
horalog-cli --review
# or
horalog-cli -r
This will show a numbered list of available dates and let you select one to view.
View Specific Date
View entries for a specific date:
horalog-cli --date 2025-01-15
Example Output
Journal Mode
HoraLog_CLI - Journal Mode
Today: 2025-01-17
Previous entries for today:
[07:45:30] Early start to test the new features
[09:30:15] Testing journal mode - everything looks good
[10:15:45] Testing review mode - navigation works perfectly
Type your journal entries (Ctrl+C to exit):
[12:00:00] > Working on documentation
[12:00:00] Working on documentation
[14:30:20] > Final testing and bug fixes
[14:30:20] Final testing and bug fixes
Review Mode
HoraLog_CLI - Review Mode
Available journal files:
1. 2025-01-17 (6 entries)
2. 2025-01-16 (6 entries)
3. 2025-01-15 (5 entries)
Enter number (1-3) or date (YYYY-MM-DD): 2
Entries for 2025-01-16:
[08:30:15] Morning routine - coffee and planning
[09:00:00] Started debugging the timestamp issue
[11:20:45] Fixed the bug, now timestamps are working correctly
[13:15:20] Team standup meeting
[15:30:10] Working on the review mode functionality
[17:00:00] Completed the review mode, ready for testing
Press Enter to return to menu or Ctrl+C to exit
File Structure
Journal entries are stored in YAML files:
journal/
├── 2025-01-15.yaml
├── 2025-01-16.yaml
└── 2025-01-17.yaml
Each YAML file contains:
entries:
- time: "09:15:22"
text: "Started working on the new project design"
- time: "10:30:45"
text: "Had a productive meeting with the team"
Commands
horalog-cli- Start journal mode (default)horalog-cli --revieworhoralog-cli -r- Start review modehoralog-cli --date YYYY-MM-DD- View specific datehoralog-cli --help- Show helphoralog-cli --version- Show version
Requirements
- Python 3.8+
- pyyaml>=6.0
Development
Quick Start
# Clone the repository
git clone <repository-url>
cd HoraLog_CLI
# Install development dependencies
make install-dev
# Install package in development mode
make install
# Run tests
make test
# Build distribution
make build
Available Commands
make help # Show all available commands
make install # Install package in development mode
make install-dev # Install development dependencies
make test # Run test suite
make build # Build distribution packages
make clean # Clean build artifacts
make upload-test # Upload to TestPyPI
make upload-prod # Upload to PyPI (production)
make check # Check package health
Manual Development Setup
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
pip install -r requirements-dev.txt
# Install in development mode
pip install -e .
# Run the application
python -m horalog_cli.main
License
MIT License
Contributing
This is a simple, focused application. The goal is to keep it minimal and robust, especially for mobile use in Termux.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file horalog_cli-1.0.1.tar.gz.
File metadata
- Download URL: horalog_cli-1.0.1.tar.gz
- Upload date:
- Size: 11.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
09a183d7ab08726e8169c2b90b45952dbcf45403a777dff480864698ad1116ac
|
|
| MD5 |
3f6e4c75d7b963828b38bbd9ef05978c
|
|
| BLAKE2b-256 |
13b774cb0e3b9c1ccf7f4649ec31e9f586b17078ccd2e6bd9ffc4c0366433882
|
File details
Details for the file horalog_cli-1.0.1-py3-none-any.whl.
File metadata
- Download URL: horalog_cli-1.0.1-py3-none-any.whl
- Upload date:
- Size: 13.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9a98af4733061e78f7f12a7b0234a585c54fad062a111bf8297cca08c2f91e91
|
|
| MD5 |
d6d7b8f70a65ad62d684b88ad6276a57
|
|
| BLAKE2b-256 |
918285c9e9f4f0acaf97cc9a90b491e25593c5ab88a14de3fb7e455e73fdbd63
|