Skip to content

v2.1.0 — Projects View

Choose a tag to compare

@658jjh 658jjh released this 26 Mar 20:01
· 31 commits to main since this release

What's New

Projects View

  • New Timeline / Projects toggle in the Session Log header
  • Groups all sessions by working directory (cwd) so you can see how much each project costs
  • Projects sorted by total cost (highest first), sessions without a project grouped at the end
  • Expandable project rows show full session sub-tables with date, time, source, model, tokens, and cost
  • Lazy detail rendering — sub-tables are only built when you first expand a project row

Performance

  • Lazy rendering for Timeline view — day detail panels (source cards + session sub-tables) are now built on first expand instead of eagerly on render
  • Single-pass aggregation — replaced 5x separate .reduce() calls with single-pass loops in totals, per-day, and per-project calculations
  • Filter short-circuitfilterSessions is skipped entirely when no filters are active, avoiding unnecessary O(n) array allocation on every view switch

Code Quality

  • Consolidated _applyFiltersCallback from 3 duplicate definitions to a single applyCurrentFilters() function
  • Replaced window._projectsData and window._toggleAllForCurrentView globals with module-scoped variables and function parameters
  • Simplified updateTableHeader to swap 2 cell texts instead of rebuilding all 8 <th> elements

Download

Platform Download
macOS (Apple Silicon) Claude-Usage-Tracker-macOS-AppleSilicon.zip
macOS (Intel) Claude-Usage-Tracker-macOS-Intel.zip

Requires Node.js (v16+) and macOS 12.0+

Screenshot

Projects View

Full Changelog

v2.0.0...v2.1.0