📈 GH Trending Explorer 🎲 Surprise me

← all repos

nailuj05 / framemate

git clone https://github.com/nailuj05/framemate.git v0.3.0 · 11d ago

Steam Frame Companion App

+0
stars, 24h · #38,829
+~0
stars, 7 days · #43,965
+116
stars, 30 days · #6,229
116
★ total
6
forks · 0 open issues

Star history (as recorded here)

2026-10-20 · 116 ★ 2026-10-23 · 116 ★
LanguageRust
LicenseGPL-3.0
Created2026-10-02 (21d ago)
Last push1d ago
Watchers3
OwnerUser

Links

README excerpt
FrameMate 
 A companion app for the Steam Frame : mirror the headset to your phone, receive phone notifications in VR, keep an eye on battery, controllers, downloads and what's playing. Demo Video 
## At a glance
## Mirroring
FrameMate mirrors what the headset shows to your phone. Show your friends what
you're doing in VR, guide someone through their first session, or just check what's on
screen. The picture is the actual view in the headset, passthrough included. Encoded using hardware acceleration to keep
the load low.
## Notifications in VR
Your phone's notifications show up in the headset as Steam notifications, so you
don't have to take the headset off to check your phone. It is a opt-in feature: turn it on with the bell in the
app's top bar. You can select which apps notifications you want in there.
## Features
- **Headset battery** – the same percentage Steam shows in the headset, charging state,
 time left or time to full, and current power draw.
- **Controller batteries** – both controllers, including while they sleep (the last known
 level is remembered across restarts).
- **Now playing** – the running game with its Steam artwork.
- **Downloads** – the Frame's download queue with progress, speed and time left, plus recently
 finished updates. Downloads of your other PCs (Steam Remote Downloads) are left out.
- **Mirroring** – see above.
- **Phone notifications in VR** – your phone's notifications show up in the headset as normal
 Steam toasts. It's opt-in: off by default, you turn it on with the bell in the app's top bar.
 Apps you don't want in there can be switched off in the settings. Turn it off again just as
 quickly, e.g. when someone else is wearing the headset. Nothing gets stored, it only goes from your phone to your Frame.
- **System** – performance profile, CPU/GPU settings, network throughput, SteamOS and Steam
 client versions, battery temperature and health.
- **Encrypted** – the phone talks to the Frame over TLS, pinned to the Frame's own key from the
 pairing code. Implementation inspired by KDEConnect
 - **Lightweight** – the agent on the Frame is a single static binary (~6.5 MB, a few MB of
 RAM) that idles at practically zero CPU.
## Installation
You need a Steam Frame and an Android phone on the same network.
### 1. Agent on the Steam Frame
Open a terminal on the Frame via SSH (recommended), or Desktop Mode → Konsole
(see here), and run:
 [code] 
That installs the Flatpak, registers the user service, runs a self check and prints the pairing
QR code. Re-run the same command to update. If you'd rather not pipe a script into a shell,
read it first; it only runs the manual commands below.
 Or do it by hand 
 [code] 
- `flatpak install` pulls the Freedesktop runtime from Flathub if it isn't installed yet
 (about 270 MB, once).
- `install-service` registers a user service, so the agent starts with every boot (in
 Game Mode too) and restarts it right away, then runs a self check.
 In Desktop Mode it can't start the agent ri