Skip to content

Add Steam Playtime Dashboard - #285

Open
ak4duy wants to merge 1 commit into
SteamClientHomebrew:mainfrom
ak4duy:add-steam-playtime-dashboard
Open

ak4duy wants to merge 1 commit into
SteamClientHomebrew:mainfrom
ak4duy:add-steam-playtime-dashboard

Conversation

@ak4duy

@ak4duy ak4duy commented Oct 28, 2026

Copy link
Copy Markdown

Playtime Dashboard

A Millennium plugin that logs every play session and turns it into a full-page dashboard inside the Steam client.

Source: https://github.com/ak4duy/steam-playtime-dashboard

Playtime Dashboard

Features

  • Today at a glance: time played, top games and platform
  • Stat cards: total time, top game, genre, platform, launch source
  • Charts: ranked game durations, today-vs-usual gauge (last 8 matching weekdays), weekday × hour heatmap, weekly per-game timeline, donuts for genre / launch source / platform
  • Filters: date range, game, genre, platform, launch source
  • Optional daily limit: toast at 80% and 100%. It only notifies, it never closes a game.
  • Export / import of session data (JSONL), duplicates skipped, nothing deleted

How tracking works

  • Start/stop from Steam's app lifetime events, launch source from game-action events
  • Heartbeat every minute; a crash, sleep, or stale heartbeat (>3 min) closes the session at its last heartbeat
  • Sessions crossing midnight are split across both days; overlapping games count once toward total time
  • Genres fetched once per game from the Steam store and cached
  • "All time (Steam)" range merges Steam's lifetime counter with the log, so play from before install still counts

Inspiration

Heavily inspired by Wakatime and Hackatime.

Task Checklist

Developer

  • My plugin complies with the plugin submission guidelines
  • I am the original author or an authorized maintainer of this plugin.
  • I have complied with all license requirements for the libraries used, including providing appropriate notices where necessary.
  • My plugin is fully open source and does not depend on any external paid services, except for widely trusted and well-known platforms. Additionally, neither I nor anyone associated with me profits from any such services.
  • Generative AI was used for most of the plugin's code (frontend).

Plugin Functionality

  • I have tested the plugin on both the Stable and Beta Steam update channels.
  • My plugin is unique, or provides additional or alternative functionality to plugins already on the store.

Backend Configuration

  • I use a standard Millennium Lua backend in my plugin.
  • I use custom binaries that or rely on other FOSS projects that aren't written directly using Millennium's Lua backend.

Community Contribution

  • I have tested and left feedback on two other plugin pull requests.
  • I have added links to those feedback comments in this PR.

Testing Instructions

  • Verified by a third party on Steam Client Stable.
  • Verified by a third party on Steam Client Beta.

@github-actions github-actions Bot changed the title Add Playtime Dashboard Add Steam Playtime Dashboard Oct 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant