Standalone bridge that mirrors your current PS5 title to Steam Rich Presence (games played).
This v2 build uses:
- Python GUI (
customtkinter) - Node backend (
steam-user) for Steam login/session persistence
- PSN presence polling via NPSSO
- Steam status sync (
PS5: <title>) - Persistent Steam login (machine auth token + refresh token)
- Start/Stop bridge from GUI
- Immediate status clear on stop/exit
main.py- GUI + orchestrationnode-steam-session-master/python_bridge_backend.js- Steam backend workersteam_session/- local runtime session files (not committed)config.json- local credentials/tokens (not committed)config.example.json- template for config
py -3.13 -m venv .venv
.\.venv\Scripts\python -m pip install -U pip
.\.venv\Scripts\python -m pip install -r requirements.txtcd node-steam-session-master
npm install
cd ...\.venv\Scripts\python main.pyNever commit:
config.jsonsteam_session/
They are ignored by .gitignore.
If you accidentally committed credentials before:
- Rotate/change Steam password
- Revoke/refresh Steam tokens (by logging out all devices if needed)
- Replace NPSSO token
From project root:
git init
git add .
git commit -m "v2 standalone: node-backed persistent steam login"
git branch -M main
git remote add origin https://github.com/realEverlite/PS5-to-Steam-Bridge.git
git push -u origin mainIf the repo already contains old content, either:
- push to a new branch first and merge on GitHub, or
- replace main intentionally (only if you really want that history change).
Recommended tool: PyInstaller.
Install:
.\.venv\Scripts\python -m pip install pyinstallerBuild:
.\.venv\Scripts\pyinstaller --noconfirm --onefile --windowed ^
--name "PS5-to-Steam-Bridge-v2" ^
--add-data "node-steam-session-master;node-steam-session-master" ^
--add-data "steam_appid.txt;." ^
main.pyOutput EXE:
dist/PS5-to-Steam-Bridge-v2.exe
Notes:n- build_exe.ps1bundlesnode.exeautomatically via--add-binary for standalone usage.n- main.py resolves bundled Node runtime at node/node.exe when frozen.
- First login may request Steam Guard code.
- After successful login, restart should normally reuse persisted auth state.
- If Steam asks again unexpectedly, check files in
steam_session/and verify system time is correct.