A self hosted virtual browser that runs in docker and uses WebRTC for real time streaming.

Neko is a self-hosted virtual browser application that runs in Docker and uses WebRTC for real-time streaming. It allows users to run a browser or other Linux applications within an isolated virtual environment, which is then streamed to a web browser for remote access. This setup ensures that the actual browsing activity occurs on the server, while the user interacts with a video stream of that session.
The software supports multi-user access, enabling several people to view and control the same virtual session simultaneously. While primarily used as a virtual browser, it can be configured to run a full desktop environment or specific Linux software like VLC. It is deployed as a server-side application that users access via a browser, making it accessible from any device without requiring local installation of the target software.
Built with Golang and Vue, Neko is designed for collaborative use cases such as watch parties, interactive presentations, and remote teaching. It serves as a tool for developers to test web applications in isolated environments or for privacy-conscious users who want to avoid OS fingerprinting. The architecture separates the host browser from the virtual environment, ensuring that sensitive data like cookies remain on the server and only the video stream is transmitted to the client. This makes it suitable for creating persistent workspaces or throwaway browsing sessions where no state is left on the local machine after the connection terminates.
Neko positions itself as a collaborative remote-control tool for synchronized web browsing and application streaming.
A cross-platform remote desktop application that allows users to host their own rendezvous and relay servers.
A self-hostable cloud desktop environment with integrated file storage, built-in applications, and a platform for hosting web apps.
Join our newsletter to get shiny new open source software delivered to your inbox. Unsubscribe anytime.