Skip to content

Latest commit

 

History

7,725 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DouRec logo

DouRec

精美、可分享的屏幕录制。开源、快速,为希望掌控自身数据的团队而生。

GitHub | 下载 | 文档

DouRec 是基于开源屏幕录制软件 Cap(AGPLv3)改造的中文版本,面向自媒体创作者。在保留 Cap 的快速屏幕录制、精良本地编辑、即时分享、评论、字幕、AI、团队工作区、自定义域名、自定义 S3 存储及完整自托管能力的基础上,提供中文化体验。

你可以用 DouRec 来制作产品演示、Bug 报告、引导教程、设计评审、工程讲解、异步站会、客户更新,以及任何"展示工作成果比再约一次会议更快"的场景。

为什么选择 DouRec

  • 录制、编辑、分享。 捕获屏幕、摄像头和麦克风,然后分享链接或导出成片。
  • 即时模式主打速度。 录制同时上传,停止录制即可获得可分享的链接。
  • Studio 模式主打精修。 本地录制后,使用背景、缩放、裁剪、字幕和导出控件进行编辑。
  • 为团队打造的桌面应用。 DouRec 支持 macOS 与 Windows,并配有用于查看、分享和管理录像的 Web 仪表盘。
  • 掌控你的存储。 可使用 DouRec Cloud、接入你自己的 S3 兼容存储桶、将录像保留在本地,或在需要时自托管整个平台。
  • 隐私优先。 支持公开或私下分享、添加密码、使用自有域名,或将敏感录像排除在托管基础设施之外。
  • 异步协作。 评论、回应、字幕、观众分析和团队工作区让反馈与视频绑定在一起。
  • DouRec AI。 自动生成标题、摘要、可点击的章节、字幕和文字稿。
  • 从 Loom 迁移。 可将现有的 Loom 视频导入 DouRec,统一管理你的资料库。

录制模式

模式 适用场景 工作方式
即时模式 快速反馈、Bug 报告、异步更新 DouRec 在你录制的同时上传,停止录制后立刻给你一个分享链接。
Studio 模式 产品演示、教程、发布、客户作品 DouRec 在本地录制,打开编辑器,让你导出或分享精修后的视频。

数据所有权

DouRec 专为不希望把录制工作流锁在黑盒里的个人和团队而设计。

  • 使用 DouRec Cloud 获得最快的托管体验。
  • 接入 AWS S3、Cloudflare R2、Backblaze B2、MinIO、Wasabi 或其他 S3 兼容的服务商。
  • 通过你自己的域名提供分享页面。
  • 使用 Docker Compose 自托管 DouRec Web、API、数据库、媒体服务和对象存储。
  • 在桌面端 Settings > DouRec Server URL 中指向你的自托管实例。

快速开始

对大多数用户而言,最快的上手路径是:

  1. GitHub Releases 下载 DouRec 的 macOS 或 Windows 版本。
  2. 登录或创建账户。
  3. 选择即时模式或 Studio 模式。
  4. 录制你的第一个 DouRec。
  5. 分享链接、导出文件,或保留在本地。

完整产品文档位于 GitHub README

自托管

自托管 DouRec Web 最快的方式是 Docker Compose:

git clone https://github.com/PNGTRID/DouRec.git
cd DouRec
docker compose up -d

DouRec 将在 http://localhost:3000 提供。

在未配置邮箱时,登录链接会出现在服务日志里:

docker compose logs cap-web

部署方式

方式 适用场景
Docker Compose VPS、家庭服务器及任何支持 Docker 的主机
Railway 一键托管式部署
Coolify 使用 docker-compose.coolify.yml 进行自托管 PaaS 部署

Deploy on Railway

在生产环境中将部署暴露到公网前,请配置公共 URL 并替换默认的密钥:

CAP_URL=https://cap.yourdomain.com
S3_PUBLIC_URL=https://s3.yourdomain.com

邮箱设置、AI 服务商、SSL、存储、生产加固和故障排查详见 自托管文档

本地开发

DouRec 是一个 Turborepo 单体仓库,使用 Rust、TypeScript、Tauri、SolidStart、Next.js、Drizzle、MySQL、Tailwind CSS 以及共享的媒体 crate。

环境要求:

  • Node.js 20 或更高版本
  • pnpm 10.5.2
  • Rust 1.88 或更高版本
  • 用于运行 MySQL、MinIO 和本地服务的 Docker

安装并初始化仓库:

pnpm install
pnpm env-setup
pnpm cap-setup

常用命令:

命令 用途
pnpm dev 启动完整的本地开发栈
pnpm dev:web 仅启动 Web 应用,不启动桌面应用
pnpm dev:desktop 启动桌面应用
pnpm build 构建工作区
pnpm tauri:build 构建桌面发行版
pnpm lint 运行 Biome 代码检查
pnpm format 使用 Biome 格式化
pnpm typecheck 运行 TypeScript 项目引用检查
cargo test -p <crate> 运行某个 crate 的 Rust 测试

数据库命令:

命令 用途
pnpm db:generate 生成数据库产物
pnpm db:push 推送 schema 变更
pnpm db:studio 打开 Drizzle Studio

仓库导航

路径 内容
apps/desktop 基于 Tauri v2 的桌面应用,使用 SolidStart UI 和 Rust 后端
apps/web 基于 Next.js 的 Web 应用,包含营销、文档、仪表盘、分享、API 路由与认证
apps/cli Rust CLI
apps/media-server Web 应用使用的媒体处理服务
apps/discord-bot Discord 集成
packages/database Drizzle schema 与数据库访问层
packages/ui 共享的 React UI
packages/ui-solid 共享的 Solid UI
packages/web-backend 后端服务层
packages/web-domain Web 领域模型与类型
packages/env 环境变量校验
packages/sdk-embed 嵌入 SDK
packages/sdk-recorder 录制 SDK
crates/* 录制、捕获、摄像头、音频、编码、渲染、封装、导出及测试相关的 crate
scripts/* 设置、分析、构建与维护工具
infra/* 基础设施配置

Web API 基于 Effect 和 @effect/platform HTTP API 构建。桌面端的捕获与导出链路由 Rust crate 提供支撑,从而获得快速的录制、渲染以及平台相关的媒体访问能力。

数据分析

DouRec 使用 Tinybird 提供观众遥测仪表盘。运行分析命令前,请设置 TINYBIRD_ADMIN_TOKENTINYBIRD_TOKEN

命令 用途
pnpm analytics:setup scripts/analytics/tinybird 部署 Tinybird 的数据源和 pipe
pnpm analytics:check 校验 Tinybird 工作区与应用预期是否一致

analytics:setup 可能会删除已纳入仓库分析配置之外的 Tinybird 资源。请仅在你打算用本仓库管理的工作区上运行。

贡献

DouRec 采用公开开发的方式。欢迎提交 Issue、Pull Request、设计反馈、Bug 报告、文档修正以及赏金任务。

许可证

本软件的部分内容采用如下许可:

  • cap-camera*scap-* 系列 crate 的代码采用 MIT License 许可,详见 licenses/LICENSE-MIT
  • 第三方组件遵循其所有者提供的原始许可。
  • 上述未提及的所有其他内容采用 AGPLv3 许可,详见 LICENSE

About

DouRec - 开源录屏,面向自媒体创作者(AGPLv3,Cap fork)

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages