Projects / Active

Time Card Tracker

Local desktop time tracking with allocation-based reporting

Overview

Time Card Tracker provides a focused desktop workflow for starting, switching, pausing, and correcting work sessions without relying on a hosted service. Work item templates define percentage-based NWA allocations, while session records preserve an allocation snapshot so later template edits do not rewrite historical reporting data. The application separates Tkinter views from repository, tracking, validation, reporting, and export services. It stores data in a per-user SQLite database, validates allocation totals in basis points, prevents overlapping edited sessions, and produces rounded daily, weekly, or monthly summaries with CSV and Markdown export support.

Engineering Highlights

  • Implements start, switch, pause, and editable session workflows with overlap validation
  • Stores percentage allocations as basis points and validates every work item at exactly 100%
  • Snapshots NWA allocation data into each session to preserve historical reporting behavior
  • Generates daily, weekly, and monthly summaries with configurable rounding and decimal-hour output
  • Uses only the Python standard library at runtime, with unittest coverage and optional PyInstaller packaging

Project Links