A simple command-line time tracker written in Ruby for tracking work hours across multiple timesheets.
Timetrap is a command-line time tracker written in Ruby that allows users to log work hours across multiple timesheets with notes. It solves the problem of manual time tracking by providing a fast, scriptable interface for developers and professionals who prefer terminal-based tools.
Developers, sysadmins, and technical professionals who work primarily in the command line and need a lightweight, customizable way to track time without GUI applications.
It offers a simple, extensible, and automation-friendly alternative to graphical time trackers, with features like natural language parsing, multiple export formats, and a plugin system for custom workflows.
Simple command line timetracker
Integrates the Chronic gem to parse phrases like '5 minutes ago' or 'tomorrow at noon,' making time corrections intuitive and fast, as demonstrated in the README examples.
Supports text, CSV, iCal, JSON, and numeric IDs out of the box, enabling easy data migration to spreadsheets, calendars, or APIs without extra tools.
Allows creation of custom formatters and auto sheets with Ruby classes, backed by community repositories for plugins like Harvest and Toggl integration.
Features abbreviated commands (e.g., 't s' for 't sheet') and script-friendly output like numeric IDs, ideal for automation and quick terminal workflows.
Requires Ruby gem installation, which can lead to setup issues like rdoc parsing errors, forcing workarounds such as '--no-document' flags or pre-installing rdoc.
Core support for services like Harvest and Toggl relies on external, community-maintained plugins, not built-in features, adding fragmentation and maintenance burden.
Setting up custom formatters or auto sheets involves placing Ruby files in specific directories (e.g., ~/.timetrap/formatters/), requiring technical knowledge and manual management.
Stores data locally in a SQLite database with no built-in backup, synchronization, or multi-device support, risking data loss and complicating team usage.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.