explaingit

m1k1o/neko

📈 Trending20,791GoAudience · developerComplexity · 4/5ActiveLicenseSetup · hard

TLDR

Self-hosted virtual browser in Docker that streams to multiple users via WebRTC, letting groups watch videos, browse together, and take turns controlling the screen.

Mindmap

mindmap
  root((neko))
    What it does
      Shared browser sessions
      Real-time screen streaming
      Multi-user control
      Linux app hosting
    Use cases
      Watch parties
      Remote support
      Collaborative browsing
      Teaching sessions
    Tech stack
      Go backend
      Vue frontend
      Docker deployment
      WebRTC streaming
    Deployment
      Self-hosted
      Container-based
      Persistent sessions
      No VPN needed

Things people build with this

USE CASE 1

Host watch parties where friends join a shared browser to watch videos together and chat in real time.

USE CASE 2

Provide remote support by letting a technician control a user's browser session to troubleshoot issues.

USE CASE 3

Run automated browser scripts with Playwright or Puppeteer on a persistent server without local setup.

USE CASE 4

Access internal applications from anywhere without a VPN by using the browser as a secure jump host.

Tech stack

GoVueDockerWebRTCLinux

Getting it running

Difficulty · hard Time to first run · 1h+

Requires Docker, WebRTC signaling setup, and coordinating multiple services (browser, streaming, signaling server).

Use freely for any purpose including commercial. Keep the notice and disclose changes to the patent grant.

In plain English

Neko is a self-hosted virtual browser that runs inside a Docker container and streams to users over WebRTC, a technology browsers use for low-latency audio and video. Instead of running a browser on your own computer, you run Neko on a server you control; what users see and hear is a live video stream of that browser, and their clicks and keystrokes are sent back. Because nothing actually executes locally, cookies, downloads, and browser fingerprints stay on the server side, which the project pitches as a privacy and isolation benefit. A core feature is that several people can connect to the same Neko session at once and all interact with the same browser in real time. The README calls out use cases like watch parties (browsing video sites together), interactive presentations where the audience can take control, collaborative debugging or brainstorming, support and teaching, and embedding a shared browser inside another web app. It can also be used solo as a persistent or throwaway browser reachable from anywhere, as a jump host into internal apps, or as a streaming source that can be broadcast over RTMP and recorded. Neko is not strictly limited to a browser. The README notes it can stream anything that runs on Linux, including media players like VLC or full desktop environments like XFCE or KDE, and could in principle relay other protocols such as RDP or VNC. Automation tools like Playwright or Puppeteer can be installed alongside. The server is written in Go; the project's listed topics also include Vue, suggesting a Vue-based front end. The full README is longer than what was provided.

Copy-paste prompts

Prompt 1
How do I set up neko in Docker to host a watch party for my friends?
Prompt 2
Can I use neko to run Playwright scripts on a persistent server, and how would I automate browser interactions?
Prompt 3
Show me how to configure neko to run a full desktop environment like XFCE inside the container.
Prompt 4
How do I deploy neko for remote support so a technician can control my browser session?
Prompt 5
What's the best way to use neko as a personal persistent browser that keeps my cookies and sessions?
Open on GitHub → Explain another repo

Generated 2026-05-21 · Model: sonnet-4-6 · Verify against the repo before relying on details.