# nickrunning/wechat-selkies

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/nickrunning-wechat-selkies).**

2,528 stars · 212 forks · Python · mit

## Links

- GitHub: https://github.com/nickrunning/wechat-selkies
- Homepage: https://hub.docker.com/r/nickrunning/wechat-selkies
- awesome-repositories: https://awesome-repositories.com/repository/nickrunning-wechat-selkies.md

## Topics

`docker` `qq` `vnc` `web` `wechat`

## Description

This project packages the official WeChat and QQ Linux clients inside Docker containers and streams their graphical interfaces to a web browser using WebRTC. It functions as a self-hosted gateway that provides browser-based access to these messaging applications without requiring native client installation on the local machine. The core design combines containerized desktop environments with real-time video streaming, GPU passthrough for hardware-accelerated rendering, and persistent volume mounting to preserve chat history and application configuration across container restarts.

The system distinguishes itself through a browser-based overlay interface that includes a floating sidebar for file transfer, image copying, and third-party application installation, as well as a window switcher for navigating between the main and background windows of the streamed desktop. A minimal Docker image variant is available to reduce storage and bandwidth requirements by omitting non-essential components. The project supports both WeChat and QQ streaming containers, with the option to map the host GPU device into the container for improved rendering performance.

## Tags

### Networking & Communication

- [Browser-Based Messaging Gateways](https://awesome-repositories.com/f/networking-communication/self-hosted-messaging-platforms/browser-based-messaging-gateways.md) — Self-hosts a container that provides browser-based access to WeChat and QQ without native client installation.
- [QQ Browser Access](https://awesome-repositories.com/f/networking-communication/qq-bot-development/qq-browser-access.md) — Packages the QQ Linux client with WebRTC streaming for browser-based access without local installation. ([source](https://cdn.jsdelivr.net/gh/nickrunning/wechat-selkies@master/README.md))
- [Containerized Desktop Streaming](https://awesome-repositories.com/f/networking-communication/remote-desktop-streaming/containerized-desktop-streaming.md) — Ships a containerized Linux desktop with WeChat and QQ, streamed to a browser via WebRTC.
- [QQ Desktop Streaming](https://awesome-repositories.com/f/networking-communication/remote-desktop-streaming/qq-desktop-streaming.md) — Runs the official QQ Linux client in a Docker container and streams it to a browser via WebRTC.
- [WeChat Browser Access](https://awesome-repositories.com/f/networking-communication/wechat-desktop-clients/wechat-browser-access.md) — Packages the WeChat Linux client with WebRTC streaming for browser-based access without local installation. ([source](https://cdn.jsdelivr.net/gh/nickrunning/wechat-selkies@master/README.md))
- [WeChat Desktop Streaming](https://awesome-repositories.com/f/networking-communication/wechat-desktop-clients/wechat-desktop-streaming.md) — Runs the official WeChat Linux client in a Docker container and streams it to a browser via WebRTC.

### DevOps & Infrastructure

- [Desktop Streaming Accelerators](https://awesome-repositories.com/f/devops-infrastructure/container-orchestration/container-runtimes/runtime-configuration-interfaces/docker-socket-orchestrators/docker-target-configurators/docker-container-deployments/gpu-accelerated-containers/desktop-streaming-accelerators.md) — Maps the host GPU into a Docker container to accelerate rendering of streamed desktop applications.
- [GPU-Accelerated Desktop Containers](https://awesome-repositories.com/f/devops-infrastructure/container-orchestration/container-runtimes/runtime-configuration-interfaces/docker-socket-orchestrators/docker-target-configurators/docker-container-deployments/gpu-accelerated-containers/gpu-accelerated-desktop-containers.md) — Provides a containerized desktop environment with GPU passthrough for hardware-accelerated rendering.
- [GPU-Accelerated Containers](https://awesome-repositories.com/f/devops-infrastructure/container-orchestration/container-runtimes/runtime-configuration-interfaces/docker-socket-orchestrators/docker-target-configurators/docker-container-deployments/gpu-accelerated-containers.md) — Maps the host GPU into the container to improve rendering performance for the streamed desktop. ([source](https://cdn.jsdelivr.net/gh/nickrunning/wechat-selkies@master/README.md))

### Operating Systems & Systems Programming

- [WebRTC Desktop Streaming Servers](https://awesome-repositories.com/f/operating-systems-systems-programming/remote-desktop-streaming-servers/webrtc-desktop-streaming-servers.md) — Streams a full Linux desktop environment to a browser using WebRTC for low-latency remote access.

### Web Development

- [Desktop Framebuffer Streaming](https://awesome-repositories.com/f/web-development/webrtc-configurations/real-time-media-servers/webrtc-facilitators/desktop-framebuffer-streaming.md) — Captures the container's desktop framebuffer and streams it to the browser via WebRTC.

### Data & Databases

- [Volume Mounts](https://awesome-repositories.com/f/data-databases/external-storage-integrations/volume-mounts.md) — Stores chat history and configuration on Docker volumes so data persists across container restarts.

### Graphics & Multimedia

- [GPU Passthrough Acceleration](https://awesome-repositories.com/f/graphics-multimedia/media-processing-analysis/media-manipulation/media-processing/video-analysis-processing/hardware-accelerated-video-pipelines/gpu-passthrough-acceleration.md) — Maps the host GPU into the container for hardware-accelerated rendering of the streamed desktop.

### Security & Cryptography

- [Local Chat Data Storage](https://awesome-repositories.com/f/security-cryptography/private-data-privacy-tools/local-chat-data-storage.md) — Stores chat history and configuration locally on the host filesystem for persistence across container restarts. ([source](https://cdn.jsdelivr.net/gh/nickrunning/wechat-selkies@master/README.md))

### User Interface & Experience

- [Remote Desktop Switchers](https://awesome-repositories.com/f/user-interface-experience/window-management/recent-window-switchers/remote-desktop-switchers.md) — Provides a floating window switcher in the top-left corner for navigating between main and background windows in a streamed desktop. ([source](https://hub.docker.com/r/nickrunning/wechat-selkies))
