Skip to main content

(시계) A simple command-line program for tracking time.

Project description

sigye (시계)

A simple, command-line time tracking program.

Overview

sigye (시계 Korean for clock) is a CLI program to help you track your time. With sigye, there are basic operations:

  • start (start tracking time towards a project)
  • stop (stop tracking time)
  • status (get the current status)
  • edit (edit a time entry record using the current default EDITOR)
  • list (list entries)
    • can filter entries by time range ("today", "week", "month") or fixed start and end dates.
    • can filter entries by project name(s) or a project starts with.
    • can filter entries by tags name(s).

The default storage of time entries is a YAML file (near future will be sqlite support). Using YAML makes manual editing of the entire file possible using any editor.

Installation

Via uv

uv tool install sigye

Via pipx

pipx install sigye

Usage

Default Storage of Entries

By default, entries are stored in a YAML file at: $HOME/.sigye/time_entries.yml

To override this value, you can add --filename <date_filename> on every command to override adhoc.

To override this value for a environment, you can set the environment variable SIGYE_DATA_FILENAME to whatever value you'd like and that will become the default.

[!IMPORTANT]
Make sure the directory exists before overriding.

Start tracking

sigye start <project-name> "<optional comment>" --tag "optional_tag"

Check status

sigye status

Stop tracking

sigye stop

List Entries

List All Entries

sigye list

List Filtered Entries

All entries from a named time frame (options: today, week and month):

sigye list TIMEFRAME

All entries for a certain project (or list of projects)

sigye list --project abc-1234 --project abc-1233

Entries that "start with" a project name (note: you can use + or . or *):

sigye list --project abc+

All entries with any tag matching a tag or multiple tags:

sigye list --tag mytag

Edit Entries

To edit an entry, use the full or partial ID (just has to be enough digits for it to be unique among your time entry file or data). By default, sigye shows the first 4 digits from an entry ID.

sigye edit ID

Localization Support (experimental Korean output)

To get output in Korean: export SIGYE_LOCALE=ko_KR

The sigye list and sigye status commands will output some information in Korean.

[!NOTE] This work is ongoing and subject to change.

Development

Install requirements

This project uses uv for dependency management.

Running tests

uv run pytest

Future Changes

  • Configuration file support
    • YAML
    • TOML
  • Language Localization (in-progress)
  • SQLite storage
  • TOML storage

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

sigye-0.4.0.tar.gz (23.1 kB view details)

Uploaded Source

Built Distribution

sigye-0.4.0-py3-none-any.whl (15.0 kB view details)

Uploaded Python 3

File details

Details for the file sigye-0.4.0.tar.gz.

File metadata

  • Download URL: sigye-0.4.0.tar.gz
  • Upload date:
  • Size: 23.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.4.29

File hashes

Hashes for sigye-0.4.0.tar.gz
Algorithm Hash digest
SHA256 950bbf5b4289bec2d02c575fb19cf1a0cda70f0ca8330b55a772d1f0ec2ba512
MD5 22eb6e9f3145f22014d8adae54acd0ea
BLAKE2b-256 7d354e013034bedc2410c74a8d006aceacbf9bd381a4fc5b2090eb98b526003b

See more details on using hashes here.

File details

Details for the file sigye-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: sigye-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 15.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.4.29

File hashes

Hashes for sigye-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 369de89fb74560c2f9c08f15169ae1c9ccfc36d24aa9a3057b5e48be2b006734
MD5 99d2937d7390470b22c4289dc5b55f7f
BLAKE2b-256 f24d9e789e0f4bc3a316b1b01144fec5089604c1f434229c7dab33a94936829d

See more details on using hashes here.

Supported by

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