-
buo4 技术教程组 用户
签合同、签协议,现在基本都是电子签名了。但主流电子签名服务是按份数收费的,用得越多账单越吓人。
Documenso 是这件事的开源答案,一句话定位:开源的 DocuSign 替代品。

它想解决的问题不只是钱
README 里有段话,讲的是比价格更深一层的东西:
数字签名文档应该又快又简单,也应该成为全世界每一份签名文档的默认做法。今天这在技术上是相当容易的,但它也为每次签名引入了一个新的角色:签名工具的提供方。
这本身不是问题,但我们应该想一想,我们希望这些"信任提供方"如何运作。
顺着他这个逻辑:你签的每一份合同,都要经过服务商。合同内容、签署人信息、签署时间,全在人家那里。服务商是谁、怎么运营、数据怎么处理,你其实很难审。
Documenso 的答案是把代码开放出来:
Documenso 想成为世界上最值得信赖的文档签署工具。这份信任来自于:让你能自己托管 Documenso,并且查看它在底层是怎么工作的。
许可证是 AGPLv3。
技术栈是透明的
README 里把整个技术栈列出来了,这本身就是一种态度——你可以对照着代码去看每一层是怎么实现的。
| 用途 | 技术 |
|---|---|
| 语言 | TypeScript |
| 框架 | React Router v7 |
| 服务端 | Hono |
| ORM | Prisma |
| CSS | Tailwind CSS |
| 组件库 | shadcn/ui + Radix UI |
| 邮件模板 | react-email |
| 国际化 | Lingui |
| API | tRPC |
| PDF 签名 | @libpdf/core |
| PDF 查看 | pdf.js |
| PDF 操作 | @cantoo/pdf-lib |
| 支付 | Stripe |
| 代码检查与格式化 | Biome |
| 端到端测试 | Playwright |
都是当前主流的选择,没有什么冷门私有组件。

部署方式
自托管支持多种方式:Docker、Docker Compose、Railway、Kubernetes,以及手动部署。完整说明在自托管文档里:https://docs.documenso.com/docs/self-hosting
官方还准备了"一键部署"入口。
本地开发的话,要求不复杂:
- Node.js v24 或以上
- Postgres 数据库
- Docker(可选)
README 里准备了 Developer Quickstart、手动配置、Gitpod、DevContainer 好几条路径,还配了视频演示。想先跑起来看看再决定要不要自托管,Gitpod 或 DevContainer 是最省事的入口。

关于信任这件事
有个细节值得注意。README 里专门有一节叫 Recognition,列的是在产品社区获得的认可,包括 Product Hunt 的奖项。
这看起来像是常见的宣传内容,但放在这个项目里其实挺切题——电子签名这个品类,最核心的资产就是信任。一个开源项目要在"签合同"这种场景里被接受,必须拿出比"我们很安全"更有说服力的东西。把代码公开、把技术栈列清、允许你自己部署自己审,就是它能拿出的东西。
谁适合用它
适合:
- 合同签署量大,按份付费的成本已经明显偏高
- 有合规要求,需要签署流程和数据不出自己的基础设施
- 想审计签署工具到底怎么处理文档内容
- 有自己的技术团队,愿意承担自托管的运维
不太适合:
- 完全没有技术资源、也不想自己维护服务
- 需要的是"开箱即用的 SaaS + 法律层面的背书"
说点实在的
电子签名工具本质上是把一份"信任"外包给了第三方。付费 SaaS 的思路是:你信任我们,我们来处理。开源自托管的思路是:代码给你,你自己判断,你自己部署。
这两种都不算错,区别在于你更愿意信任谁。
Documenso 把技术栈全列出来、把许可证设为 AGPLv3、支持 Docker 到 Kubernetes 的全套部署方式——这一整套动作都在回答同一个问题:凭什么让你把合同交给这个项目?
如果"能自己看代码、自己部署"恰好是你需要的答案,它值得试试。
项目地址:https://github.com/documenso/documenso
AGPLv3 许可证。官网:https://documenso.com 自托管文档:https://docs.documenso.com/docs/self-hosting