No accounts. No cloud. No subscription. Just your phone, your computer, and your network.
Use your phone or tablet as a real extra monitor — drag windows onto it. Or mirror your main screen to share.
Same network? Auto-discovery finds your computer. No Wi-Fi? Plug the cable in — works without any router.
Drag a file onto the desktop app, or tap Send on the phone. Goes directly between devices — never touches a cloud.
Phone becomes a wireless trackpad with right-click, scroll, and a full keyboard with 40+ system shortcuts.
One-time 4-digit code on the desktop. Trusted devices reconnect instantly — no re-pairing.
Download one app, double-click to run. No installers, no drivers (Windows has an optional one), no setup wizard.
No accounts, no setup wizard, no driver install. Just three taps.
Open Vior on your Mac, Linux, or Windows machine and click Start Server. You'll see a QR code and a 4-digit pair code.
Open the Vior Android app (or any browser on iOS). It finds your computer automatically over Wi-Fi, or you can scan the QR code.
Type the 4-digit code shown on the desktop. From then on, that device is trusted — it auto-connects without asking again.
Every screen, every step — from opening the app to mirroring your display.
Open Vior on your computer. You'll see an amber dot and one button: Start Server. Click it — a spinner confirms it's starting — then a green dot appears with a real scannable QR code and a 4-digit pair code. Copy URL and Copy pair code buttons let you share manually.
Open the Vior app on your phone. First time ever: pick your intent — Display, Remote, or Files. Pick once, never asked again. The app scans your network and shows your computer as a tappable row with name and IP. Tap the row to connect.
If no server found: scan the QR, type the pair code, or enter the IP manually. USB cable toggle is right above.
Type the 4-digit code shown on your desktop. From then on, that device is trusted forever — reconnects instantly, no re-pairing. Five wrong attempts per minute, then a short timeout. Manage trusted devices in Settings.
The bottom tab bar unlocks: Display, Files, Remote. Tap View Stream to see your desktop on your phone — touch the screen to control the mouse. Toggle Extend (phone becomes a second monitor) or Mirror (phone shows the same screen). One tap reconfigures the display.
Tap Send File or Send Photo on your phone. Files transfer in 48KB chunks with SHA-256 verification on both ends. Trusted devices auto-accept without a prompt. On desktop, click Send file to phone to push files the other way. Everything lands in ~/Downloads/Vior.
Swipe to move the cursor with sub-linear acceleration. Tap = left click. Two-finger tap = right click. Two-finger drag = scroll. Tap Keyboard for the soft keyboard, 40+ shortcut buttons, and F-keys. A flash pill confirms every action.
macOS needs Accessibility permission for Remote. Vior shows a red card on the desktop and warns the phone too.
Plug your phone into the desktop with any data-capable USB cable. No router, no Wi-Fi password, no ADB, no developer mode.
Tap the USB transport pill at the top of the screen. You'll see a breathing orb — "Waiting for cable…" — with a checklist: use a data cable, desktop must be running, tap Allow on the prompt.
Connect the cable. The orb turns amber — "Verifying cable…" — while desktop and phone handshake (under 3 seconds). If the desktop isn't running Vior, the orb turns red with a Try again button.
The orb turns green. Video streams over the cable — touch controls the mouse. USB carries display + touch only. Trackpad & keyboard need Wi-Fi. A toast explains this on first Remote use.
Wi-Fi drops while USB is plugged? USB takes over cleanly. Cable yanked? A 1.5-second debounce prevents accidental disconnect. In USB-only mode (Settings), unplugging keeps you on USB — no Wi-Fi fallback.
Wi-Fi blip? Phone backgrounded? Vior retries up to 5 times with exponential backoff (1s → 30s). A yellow banner shows progress. DHCP lease renewed? Vior re-scans the subnet for the same computer and reconnects transparently.
Desktop polls server status every 3 seconds. If 3 polls fail, the UI transitions to "Server stopped unexpectedly" with a restart option — no more frozen "Server ready" for hours after a crash.
Every file transfer is verified end-to-end. The sender computes a SHA-256 hash incrementally. The receiver computes its own and compares — rejects on mismatch. Silent corruption caught, not ignored.
Server runs natively on macOS, Linux, and Windows. Mobile client is an Android APK — iOS app is coming soon (Wi-Fi today via Safari + Add to Home Screen).
| Platform | Server | Mobile client | Build |
|---|---|---|---|
| macOS 13+ | ✓ CGVirtualDisplay | ✓ Web + Android | universal binary |
| Linux (X11) | ✓ xrandr + dummy | ✓ Web + Android | amd64 · arm64 |
| Windows 10+ | ✓ IDD driver | ✓ Web + Android | amd64 |
| Android 9+ | — | ✓ Capacitor APK | aarch64 |
| iOS 16+ | — | ⏳ Coming soon | today: Safari PWA |
No frameworks-of-the-week. Everything below has been in production for years.