Skip to content

[FEAT] Add Wakatime integration for local coding time tracking #963

@Priyanshu-byte-coder

Description

@Priyanshu-byte-coder

Problem Statement

GitHub commit data only captures when code is pushed, not when it's written. A developer spending 6 hours coding without committing appears idle on DevTrack. Wakatime tracks actual editor time and provides a far more accurate picture of daily coding activity.

Proposed Solution

  • Add optional Wakatime API key to user Settings
  • New "Coding Time" widget showing: today's hours, 7-day chart, most used language, most worked-on project
  • Data source: Wakatime API /api/v1/users/current/summaries
  • Store API key encrypted in Supabase users table (new column wakatime_api_key_encrypted)

Alternatives Considered

  • ActivityWatch (self-hosted): More private but requires user self-hosting — too much friction
  • GitHub event timestamps only: Already done, misses unreleased work

Acceptance Criteria

  • Settings page: Wakatime API key input with validation (test API call on save)
  • Key stored encrypted in DB
  • New CodingTimeCard component showing 7-day bar chart
  • New /api/metrics/coding-time route proxying Wakatime API
  • Widget hidden if no Wakatime key configured

Additional Context

Wakatime has a free tier (7-day history). API docs: https://wakatime.com/developers

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requestgssoc:assignedGSSoC: Issue assigned to a contributorlevel:advancedGSSoC: Advanced difficulty (55 pts)needs-triageNeeds maintainer triagetype:featureGSSoC type bonus: new feature

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions