OpenNOW
Product, setup, architecture, and troubleshooting docs for the open-source GeForce NOW desktop client
OpenNOW is an open-source desktop client for GeForce NOW. These docs cover the install path, the Electron app, the renderer WebRTC stream, settings, capture, input, and the experimental native streamer.
For macOS users looking for a more performant OpenNOW version, Jayian1890 maintains the separate OpenNOW-Mac repository.
Independent community project
OpenNOW is not affiliated with NVIDIA. NVIDIA and GeForce NOW are trademarks of NVIDIA Corporation.
Install and play
Release packages, first launch, sign-in, app settings, and source builds.
Architecture map
Main, preload, renderer, shared contracts, native process, and data ownership.
Configuration reference
Every setting, default, persisted key, and compatibility normalization rule.
WebRTC and signaling
CloudMatch, SDP, ICE, NVST data channels, Chromium flags, and failure handling.
Native streamer
Experimental Rust/GStreamer protocol, diagnostics, media caps, and fallback behavior.
Input and capture
Pointer lock, keyboard layout, gamepad, clipboard, microphone, screenshots, and recording.
Fast path
Download the latest desktop release from GitHub Releases.
Install the artifact for your platform: Windows .exe, macOS .dmg/.zip, Linux .AppImage/.deb, or the iOS TestFlight beta.
Sign in through browser OAuth or QR/device authorization and let OpenNOW persist the session locally.
Tune codec, resolution, FPS, bitrate, color quality, region, input, microphone, and capture settings from the app.
Choose your docs path
- Start with Getting Started.
- Keep Configuration open when tuning quality, shortcuts, capture, and controller mode.
- Use Media for screenshots, recordings, local storage, and gallery behavior.
- Read Architecture before changing process-boundary code.
- Use Development for local scripts, checks, release packaging, and contribution workflow.
- Check Authentication before touching provider, token, or session refresh logic.
- Read WebRTC for signaling, SDP negotiation, ICE, and NVST data channels.
- Use Native Streamer for the Rust/GStreamer protocol and runtime gates.
- Use Streamer Investigation for backend strategy and diagnostics.