MCPcopy Index your code
hub / github.com/SteamClientHomebrew/Millennium

github.com/SteamClientHomebrew/Millennium @v3.3.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v3.3.1 ↗ · + Follow
3,704 symbols 6,107 edges 380 files 560 documented · 15%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Millennium

Home PageDiscordDocumentation

Open-source modding framework for creating and managing Steam Client themes and plugins.

Windows Linux

Millennium Settings Page Preview

Installation[^1]

Installing Millennium is only a few steps. See here for a more detailed guide.

Building Source[^2]

Refer to BUILDING.md for build instructions for your platform.

Features[^3]

  • Custom CSS and Themes: Inbuilt css editor with live-edit capability
  • Plugin support allowing full control over Steam
  • Exceptionally optimized with a very minimal footprint
  • Privacy friendly: blocks Steam analytics & crash reporting out of the box and has no in-built telemetry
  • Fully portable
  • Maintained very actively, most widespread bugs are fixed in hours.
  • Yours. Use it how you want to.

Language Support[^4]

Adding a new locale

Only languages officially supported by the Steam can be added to the Millennium. Check the list here in the "Full Platform Supported Languages" section. Base your locale on the existing english locale, and place it among the existing locales. Name the file lang.json where lang is the "API language code" from the supported language list and append the target file to the localizationFiles here.

Locales are community managed

SteamClientHomebrew only maintains the english locales. If any changes are made to the english locales that wreck another language, contributors are responsible for updating them.

Sponsors[^5]

Free code signing on Windows provided by SignPath.io, certificate by SignPath Foundation

[^1]: Installing and using Millennium [^2]: Building and developing with Millennium's source code [^3]: View Millennium feature list [^4]: Millennium language support [^5]: Code signing certificate sponsorship

Extension points exported contracts — how you extend this code

GameSessionNotificationBase (Interface)
* @prop unAppID is not properly set by Steam for non-steam game shortcuts, so it defaults to 0 for them
src/typescript/sdk/packages/client/src/globals/steam-client/GameSessions.ts
MillenniumRouterStateContext (Interface)
(no doc) [2 implementers]
src/typescript/sdk/packages/client/src/hooks/router/MillenniumRouterState.tsx
MillenniumGlobalComponentsContext (Interface)
(no doc) [1 implementers]
src/typescript/sdk/packages/client/src/hooks/router/GlobalComponentsState.tsx
Window (Interface)
(no doc)
src/typescript/frontend/declarations.d.ts
Patch (Interface)
(no doc)
src/typescript/frontend/types/index.ts

Core symbols most depended-on inside this repo

log
called by 191
src/system/logger.cc
empty
called by 181
src/include/millennium/http_hooks.h
format
called by 108
src/typescript/sdk/packages/client/src/logger.ts
what
called by 106
src/include/millennium/filesystem.h
warn
called by 77
src/system/logger.cc
get
called by 75
src/system/config.cc
log_error
called by 70
src/include/instrumentation/logger.h
set
called by 52
src/system/config.cc

Shape

Method 1,922
Function 928
Interface 528
Class 187
Enum 139

Languages

TypeScript67%
C++30%
C3%

Modules by API surface

src/typescript/sdk/packages/client/src/globals/steam-client/Settings.ts248 symbols
src/typescript/sdk/packages/client/src/globals/steam-client/App.ts200 symbols
src/typescript/sdk/packages/client/src/globals/steam-client/Notifications.ts130 symbols
src/typescript/sdk/packages/client/src/globals/steam-client/Input.ts110 symbols
src/typescript/sdk/packages/client/src/globals/steam-client/RemotePlay.ts84 symbols
src/lua_host/api/json.c79 symbols
src/typescript/sdk/packages/client/src/globals/steam-client/system/index.ts70 symbols
src/typescript/sdk/packages/client/src/globals/steam-client/system/network/index.ts69 symbols
src/typescript/sdk/packages/client/src/globals/steam-client/User.ts52 symbols
src/bindings/entry_point.cc50 symbols
src/typescript/sdk/packages/client/src/globals/steam-client/browser-view/BrowserViewPopup.ts41 symbols
src/typescript/sdk/packages/client/src/modules/Router.ts40 symbols

For agents

$ claude mcp add Millennium \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact