id: 'billddesk'
name: 'billddesk'
displayName:
  zh: 'BilldDesk'
  en: 'BilldDesk'
slogan:
  zh: '开源远程桌面控制方案'
  en: 'Open-source remote desktop control solution'
description:
  zh: 'BilldDesk 是一个基于 WebRTC 的开源远程桌面项目，支持浏览器端远程控制、文件传输和剪贴板共享。可通过 Docker 一键部署，适合需要轻量级远程支持的场景。'
  en: 'BilldDesk is an open-source remote desktop project based on WebRTC. Supports browser-based remote control, file transfer, and clipboard sharing. Deploy with Docker in one click for lightweight remote support scenarios.'
type:
  - 'backend'
  - 'selfhosted'
status: 'maintained'
platforms:
  - 'web'
  - 'docker'
techStack:
  - 'WebRTC'
  - 'TypeScript'
  - 'Node.js'
  - 'Docker'
  - 'React'
features:
  zh:
    - 'WebRTC 远程控制'
    - '浏览器访问'
    - '文件传输'
    - '剪贴板共享'
    - 'Docker 部署'
    - '多用户管理'
    - '连接加密'
  en:
    - 'WebRTC remote control'
    - 'Browser access'
    - 'File transfer'
    - 'Clipboard sharing'
    - 'Docker deployment'
    - 'Multi-user management'
    - 'Encrypted connections'
tags:
  - 'Remote Desktop'
  - 'WebRTC'
  - 'Self-hosted'
icon: 'Monitor'
logo: '/logos/billddesk.png'
repoUrl: 'https://github.com/shenjianZ/billddesk'
docsUrl: 'https://github.com/shenjianZ/billddesk#readme'
latestVersion: 'v0.8.0'
releaseDate: '2026-02-14'
license: 'Apache-2.0'
language: 'TypeScript'
lastUpdated: '2026-04-20'
recommended: false
featured: false
order: 6
color: '#EF4444'
downloads:
  - platform: 'Docker'
    arch: 'multi-arch'
    url: 'https://github.com/shenjianZ/billddesk/releases/download/v0.8.0/docker-compose.yml'
    size: '156 MB'
    sha256: ''
roadmap:
  done:
    - 'WebRTC 连接'
    - '基础远程控制'
    - 'Docker 镜像'
    - '用户认证'
  doing:
    - '文件传输优化'
    - '剪贴板同步'
    - '多显示器支持'
  planned:
    - '移动端客户端'
    - '录制功能'
    - '白板协作'
changelog:
  - version: 'v0.8.0'
    date: '2026-02-14'
    changes:
      zh:
        - '新增 Docker Compose 部署'
        - '优化连接稳定性'
        - '新增用户管理界面'
      en:
        - 'Added Docker Compose deploy'
        - 'Improved connection stability'
        - 'Added user management UI'
architecture:
  zh: '浏览器客户端 → WebRTC → 信令服务器 (Node.js) → TURN/STUN → 被控端'
  en: 'Browser Client → WebRTC → Signaling Server (Node.js) → TURN/STUN → Controlled End'
