Skip to main content

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 --review or horalog-cli -r - Start review mode
  • horalog-cli --date YYYY-MM-DD - View specific date
  • horalog-cli --help - Show help
  • horalog-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


Download files

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

Source Distribution

horalog_cli-1.0.1.tar.gz (11.7 kB view details)

Uploaded Source

Built Distribution

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

horalog_cli-1.0.1-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

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

Hashes for horalog_cli-1.0.1.tar.gz
Algorithm Hash digest
SHA256 09a183d7ab08726e8169c2b90b45952dbcf45403a777dff480864698ad1116ac
MD5 3f6e4c75d7b963828b38bbd9ef05978c
BLAKE2b-256 13b774cb0e3b9c1ccf7f4649ec31e9f586b17078ccd2e6bd9ffc4c0366433882

See more details on using hashes here.

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

Hashes for horalog_cli-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9a98af4733061e78f7f12a7b0234a585c54fad062a111bf8297cca08c2f91e91
MD5 d6d7b8f70a65ad62d684b88ad6276a57
BLAKE2b-256 918285c9e9f4f0acaf97cc9a90b491e25593c5ab88a14de3fb7e455e73fdbd63

See more details on using hashes here.

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