Timewarrior logo

Timewarrior

Command-line time tracking with stopwatch and calendar backfill

Portable time tracking utility offering simple stopwatch features and sophisticated calendar-based backfill with flexible reporting from the command line.

Timewarrior banner

Overview

Purpose and Audience

Timewarrior is a command-line time tracking utility designed for developers, system administrators, and productivity enthusiasts who prefer terminal-based workflows. It combines the simplicity of stopwatch functionality with advanced calendar-based backfill capabilities, allowing users to track time in real-time or retroactively log activities.

Core Capabilities

The tool provides flexible reporting mechanisms that transform raw time data into actionable insights. Users can start and stop time tracking with simple commands, tag intervals for categorization, and generate reports spanning arbitrary date ranges. The calendar-based backfill feature enables users to reconstruct their work history even when they forget to start the timer.

Technical Foundation

Built in C++ with full C++17 support, Timewarrior is portable across Unix-like systems and actively maintained by the Gothenburg Bit Factory community. The project shares ecosystem ties with Taskwarrior, offering integration opportunities for task-based time tracking. Installation options include binary packages from community repositories or building from source using CMake. The MIT license ensures flexibility for both personal and commercial use.

Highlights

Simple stopwatch commands for real-time time tracking
Calendar-based backfill to retroactively log work intervals
Flexible reporting across arbitrary date ranges and tags
Portable command-line interface with active community support

Pros

  • Lightweight terminal-based workflow with no GUI overhead
  • Sophisticated backfill capabilities for reconstructing time logs
  • MIT license provides maximum flexibility for all use cases
  • Active development and strong community support channels

Considerations

  • Command-line interface requires terminal familiarity
  • Requires manual build process or third-party packages
  • No native graphical interface for visual time analysis
  • Steeper learning curve compared to GUI time trackers

Managed products teams compare with

When teams consider Timewarrior, these hosted platforms usually appear on the same shortlist.

Clockify logo

Clockify

Time tracking and timesheets for teams and freelancers

Everhour logo

Everhour

Time tracking that integrates deeply with project tools

Harvest logo

Harvest

Time tracking with invoicing and expense tracking

Looking for a hosted option? These are the services engineering teams benchmark against before choosing open source.

Fit guide

Great for

  • Developers and sysadmins comfortable with terminal workflows
  • Users needing retroactive time logging and calendar backfill
  • Teams requiring portable, scriptable time tracking solutions
  • Productivity enthusiasts integrating with Taskwarrior ecosystems

Not ideal when

  • Users requiring graphical dashboards and visual analytics
  • Teams needing built-in collaboration or approval workflows
  • Organizations requiring cloud-based centralized time tracking
  • Non-technical users unfamiliar with command-line tools

How teams use it

Freelance Developer Billing

Track billable hours across multiple client projects with tagged intervals and generate detailed reports for accurate invoicing

Retrospective Time Logging

Use calendar backfill to reconstruct work history from calendar events or memory when real-time tracking was forgotten

Personal Productivity Analysis

Monitor time allocation across activities and projects to identify productivity patterns and optimize work habits

Task-Based Time Tracking

Integrate with Taskwarrior to automatically track time spent on specific tasks and correlate effort with task completion

Tech snapshot

C++60%
Python35%
Shell3%
CMake1%
Dockerfile1%
C1%

Tags

time-trackingtimewarriortimetrackingtime-trackerclitimetracker

Frequently asked questions

What is calendar-based backfill?

Backfill allows you to retroactively log time intervals by specifying past dates and times, enabling you to reconstruct your work history even when you forgot to start the timer.

Does Timewarrior require a graphical interface?

No, Timewarrior is a command-line utility designed for terminal use. It has no GUI but can be integrated with third-party visualization tools if needed.

Can Timewarrior integrate with Taskwarrior?

Yes, Timewarrior shares community spaces and ecosystem ties with Taskwarrior, offering integration opportunities for task-based time tracking workflows.

What platforms does Timewarrior support?

Timewarrior is portable across Unix-like systems including Linux, macOS, and BSD. It requires a C++17-compliant compiler and can be built from source or installed via community packages.

Is Timewarrior suitable for team time tracking?

Timewarrior is primarily designed for individual use. While scriptable and portable, it lacks built-in collaboration features like centralized reporting or approval workflows common in team time tracking solutions.

Project at a glance

Active
Stars
1,534
Watchers
1,534
Forks
110
LicenseMIT
Repo age7 years old
Last commit2 weeks ago
Primary languageC++

Last synced yesterday