m1k1o

neko: Share a Virtual Browser Over WebRTC

Neko streams a browser or Linux desktop from a self-hosted Docker environment to multiple people over WebRTC. It suits watch parties, collaborative browsing, and remote access when participants need to interact with the same session.

ActiveGoApache-2.0Self HostedDockerReal Time
Stars
22.5k
Forks
1.6k
Stars, last 16 days
+82
Last commit
3 days ago
Contributors
68

Our take

Activeregular commits and releases

Health score

54/100

How it is scored
Activity
57
Community
53
Issues
52
Pull requests
53

+82 stars in the last 16 days

  • Slower to close issues than 91% of the projects we track

Neko is a capable option for interactive, self-hosted browser sharing, with recent releases and active maintenance balanced by substantial reliance on one contributor.

Good fit if

  • You need multiple people to view and control a shared browser or Linux desktop.
  • You can run a Docker-based service and want WebRTC streaming with audio.
  • Your use case matches its active development, and you are comfortable with most code contributions coming from one person.

Look elsewhere if

  • You need a conventional remote desktop gateway based on RDP or VNC, which the project describes as future work rather than a current feature.
  • You need a project whose maintenance is spread more evenly across contributors.
  • You need a browser-only service: Neko can run other Linux applications and desktops, so that broader environment may not suit your needs.
All health signals
Last commit2026-10-07 (3 days ago)
Commits, last 90 days52
Releases, last 12 months3 (latest v3.1.6, 2026-09-30)
Contributors68 (top contributor: 83% of commits)
Issues closed, last 90 days42 (typically closed in 224 days)
Pull requests merged, last 90 days39 (typically merged in 1 day)
Project age6 years

Checked on 2026-10-11 with the GitHub API.

Overview

Neko runs a browser or other Linux desktop application in a self-hosted environment and streams it to participants over WebRTC. Rather than sharing a static screen or sending desktop images over WebSockets, it provides live audio and video with shared, interactive control.

It is aimed at people who want to share a browser session or desktop with others, such as for watch parties, teaching, or collaborative work. The project is active, with regular commits and releases, but its code contributions are concentrated heavily in one contributor.

Key Features

  • Streams browser and desktop sessions over WebRTC.
  • Supports multiple participants viewing and controlling the same session.
  • Includes audio support alongside video streaming.
  • Offers Docker images for browsers including Firefox, Chromium, Tor Browser, and others.
  • Can run applications beyond browsers, including desktop environments and VLC.
  • Supports use cases such as session broadcasting over RTMP.
  • Provides separate room-management software through neko-rooms.

Use Cases

  • Watch parties: Friends can watch video together and interact in the shared session.
  • Interactive teaching or presentations: Instructors and presenters can let participants interact with the displayed browser or application.
  • Collaborative browsing and debugging: Teams can work together in one browser session instead of coordinating separate environments.
  • Remote application access: Individuals can stream a containerized browser or desktop to their devices.
  • Support and guided workflows: A support person can demonstrate or guide tasks in a controlled shared environment.

What you need

Detected in the repository

  • Go (main language on GitHub)
  • A Compose file to run it with its related services
  • Automated checks on GitHub Actions

License in plain words

Apache-2.0permissive

  • Commercial use: yes
  • Modify and redistribute: yes
  • You must keep: the license, the NOTICE file and a note of your changes
  • Share your changes: no
  • Includes an explicit patent grant from the contributors:

A summary, not legal advice: the LICENSE file is what applies.

Getting Started

Start with the quick-start guide and installation documentation for setup instructions and Docker image options. The README links to configuration, examples, and troubleshooting details.

Alternatives

  • wolf: Wolf streams Linux games or virtual desktops through Moonlight, while Neko shares a browser or desktop session with multiple people over WebRTC.
  • Apollo: Apollo streams a host desktop to a client with hardware encoding, while Neko is designed for multiple people to interact with one shared session.
ProjectLanguageLicenseStarsStatus
nekoGoApache-2.022.5kActive
wolfC++MIT2.2kActive
ApolloC++GPL-3.011.2kQuiet

Considerations

  • The project is actively maintained, with recent commits and releases, but contributions are highly concentrated in one person. Issues are being closed, though the median time to close is lengthy; merged pull requests have a much shorter median time.
  • Neko is designed to run with Docker. Its documentation should be checked for deployment and network configuration details before exposing a service to participants.
  • The README identifies RDP and VNC support as a possible future direction, not a current capability.
  • The repository reports no test suite in its project metadata, so teams should evaluate their own validation needs before relying on changes in production.

Found this useful?

Share it with someone who would like neko.

Comparisons