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.0.tar.gz (11.8 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.0-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

Details for the file horalog_cli-1.0.0.tar.gz.

File metadata

  • Download URL: horalog_cli-1.0.0.tar.gz
  • Upload date:
  • Size: 11.8 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.0.tar.gz
Algorithm Hash digest
SHA256 38ac0b8f28e25c85aa5d8bc9d61f6075d777cf9ea9b67144260d6b4c7fcea32d
MD5 7f114be9e1af617ebfe0519e9feefbc5
BLAKE2b-256 9cf42fb878531336d46e12b41d5eac795fc80e3ce46f30858e12d1806be4bf69

See more details on using hashes here.

File details

Details for the file horalog_cli-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: horalog_cli-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 13.3 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dc619a9d094e3edf8c62d3fc1bbbab5c828400af62ea7f78677877f6012740c0
MD5 19b81e8d8f85f4e77fc49eaeb3ed031e
BLAKE2b-256 4bb334284c1ed12160af9c2b537f4885e19378ff96650c835fc6ad33311ef96a

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