Underground 2 Revived
Play Need for Speed: Underground 2 (2004) in Chrome and Firefox with WebGPU graphics, Web Audio, up to 120 fps widescreen, controller support, free roam and Online races with friends. Fan project, not
Every game you have. Every way you can play it—in one private home library.
Translation pending
GamesGo · TypeScriptGitHub @GreenFuzeOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
All your games. Every screen at home. Bring Steam, Xbox, Game Pass, ROMs, installers, browser play, and cloud games together in one home library.
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
MyGamesAnywhere is a self-hosted, headless-first game-library control plane. The Go server connects to game and storage sources, reconciles titles and copies into a canonical library, tracks provider availability and versions, and serves authorized game content, metadata, media, and compliant runtime artifacts to established frontend applications.
MGA's WebUI is an administration console. It manages profiles, sources, the library, catalog offers, artifacts, achievements, API clients, storage, and server operations. It is not a first-party game player, installer, or launcher.Read the full README ↗Your games are spread across stores, subscriptions, cloud folders and a NAS. MGA brings them into one private library, then shares that library with the launcher you already enjoy.
Run MGA on a Windows PC at home. Connect your sources, organize games and artwork, and give each person their own profile. Use Playnite or the LaunchBox preview plugin to browse and play. Manage the collection from a browser, including on your phone.
MGA is free, open-source and self-hosted. It is pre-1.0 software: expect rough edges and keep backups.
windows-amd64-installer.exe.Full installation guide · Website · Release notes
You do not need a separate MGA Client. MGA manages and serves the library; your launcher handles playing, installation and emulators. If Windows warns about the unsigned installer, check the release's SHA256SUMS.txt before deciding whether to run it.
| Frontend | What is available |
|---|---|
| Playnite | MGA plugin 0.1.0: library import, metadata, artwork and authorized file downloads. Install from the plugin release; approval for the official add-on catalog is a separate step. |
| LaunchBox | Preview adapter: explicit library sync, metadata, artwork and authorized downloads. Not yet a public managed-plugin release or part of LaunchBox's native storefront scan. Big Box interaction is not separately validated. |
| Mobile | Browser-based management. There is no released mobile launcher plugin; do not expect the phone to play or install games through MGA. |
MGA 0.2.22 or newer is required for the plugins' profile-password sign-in. Check each plugin's own compatibility and download notes. These early adapters are not full game updaters: content-hash verification and cross-retry revision continuity are not complete. Do not use them to overwrite an existing installation after a source version changes.
MGA has connectors for Steam, Xbox, Google Drive and SMB/NAS sources, plus experimental sources and metadata providers. Provider availability and sign-in requirements vary; see Works with MGA and the setup shown by your installed version.
A Steam or Xbox library entry is not a redistributable game download. Their clients, subscriptions, licenses and account rules still apply. MGA does not bypass account restrictions, DRM or simultaneous-play limits.
MGA can maintain emulator/runtime artifacts and serve them where licensing, provenance and integrity checks allow. You still configure and run emulators in your frontend. No games, ROMs, firmware or paid entitlements are bundled. Google Play catalog support does not imply an Android download, license transfer or working Google Play Games launcher integration.
The server is written in Go. Its profile-aware WebUI manages sources, games, catalog availability, emulator/runtime artifacts and frontend access. Scoped Frontend API clients consume metadata, media and authorized content; local execution belongs to the frontend.
To run a separate development server, install Go, Node.js and npm:
cd server/frontend
npm ci
npm run build
cd ..
go run ./cmd/server --runtime-mode user --app-dir "$PWD" --data-dir "$PWD/.dev-data" --no-tray
Open http://127.0.0.1:8900 and complete the first-profile setup. Use a separate data directory and do not start this alongside an existing server on the same port.
Verification:
cd server/frontend
npm run test:unit
npm run build
cd ..
go test ./...
go vet ./...
Contributors and agents: start with AGENTS.md, CLAUDE.md and docs/agent-bootstrap.md. Current product and operating guidance lives in the MGA Confluence space; Jira MGA is the source of truth for work state. Historical client/player code and dated documents are not current product guidance.
See VERSION and LICENSE.md.