Documenso: A Self-Hostable DocuSign Alternative Built on AGPL-3.0
The Open Source DocuSign Alternative.
At a glance
- What is it?
- Documenso is an open-source document signing platform that lets you self-host the entire stack, from PDF manipulation to email notifications. This review covers its architecture, setup, limitations, and who should adopt it.
- Who is it for?
- Adopt Documenso if you need a self-hosted, auditable e-signature tool and you are comfortable with the AGPL-3.0 license, which requires you to release modifications to the source code when you distribute the software. Do not adopt it if you require a commercially supported, permissively licensed solution, or if you expect to accept external pull requests, since the project has paused them.
- Can I use it commercially?
- Yes, with strict conditions. AGPL-3.0 is a network copyleft licence: if people use a modified version over a network, for example as a hosted service, you must offer them its source code under the same licence.
- Is it still maintained?
- Yes. The repository received new commits within the last day.
- What is it written in?
- Mainly TypeScript, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
The Problem: Trusting Third-Party Signing Providers
Documenso addresses a specific concern: when you sign a document digitally, you introduce a new party, the signing tool provider, into the transaction. That provider can see your documents, your signatures, and your metadata. Documenso's pitch is that you should be able to audit and control that party by self-hosting the software. The README frames it as building 'open trust infrastructure.' The target user is a developer or organization that wants to run their own e-signature service, not a non-technical person looking for a hosted solution. The project's existence is a direct response to proprietary tools like DocuSign, which force you to trust a closed black box. If you are comfortable with that trust, Documenso offers no advantage. But if you want to inspect the code that handles your signatures, this is the starting point.
Architecture: A TypeScript Stack from PDF to Email
Documenso is built entirely in TypeScript. The frontend uses React Router v7, the server runs on Hono, and the API is exposed via tRPC. Data persistence is handled by Prisma with PostgreSQL. PDF manipulation is split across three libraries: @libpdf/core for signatures, pdf.js for viewing, and @cantoo/pdf-lib for general manipulation. Email templates use react-email, and internationalization is managed with Lingui. Payments are integrated with Stripe, which suggests a commercial tier exists, though the README does not detail it. The architecture is modular, but the heavy reliance on a specific set of PDF libraries means that any change in those dependencies could affect signing functionality. The use of tRPC for the API is notable because it gives type-safe end-to-end communication, which is a plus for maintainability but also couples the client and server tightly.
Getting It Running: Docker and the dx Command
The README provides a clear developer quickstart. You need Node.js v22 or above, PostgreSQL, and Docker (optional but recommended). The steps are: fork the repository, clone it, copy the .env.example to .env, then run `npm run dx` to spin up a PostgreSQL database and an inbucket mailserver in Docker. After that, `npm run dev` starts the application. For an even faster path, `npm run d` does everything in one command. The access points are: the app at localhost:3000, incoming mail at localhost:9000, the database on port 54320, and an S3 storage dashboard at localhost:9001. This is a developer-centric setup; it assumes you are comfortable with Docker and environment variables. The .env.example file provides 'handpicked defaults,' but you will need to review them for production use.
Limitations: External Contributions Are Paused
A significant limitation is that the project no longer accepts external pull requests. The README states this clearly: 'We no longer accept external pull requests, aside from a small group of trusted contributors we reach out to directly.' The recommended way to contribute is through detailed issues. This means you cannot fork the project and expect your improvements to be merged back upstream. For a self-hosted tool, this is a double-edged sword. You can still audit and fork the code, but you will be maintaining your own fork if you need custom features. The README links to a blog post explaining the reasoning, but the practical effect is that the community cannot directly shape the codebase. If you rely on community-driven development, this project may frustrate you.
Licensing and Maintenance Costs: AGPL-3.0 Implications
Documenso is licensed under AGPL-3.0. This is a strong copyleft license. If you modify the code and provide it as a network service, you must make your modifications available to users. For a self-hosted internal tool, this may not be a burden, but if you plan to offer Documenso as a service to others, you must release your changes. The README does not provide a separate commercial license; it mentions an Enterprise plan for large organizations, but the details are not in the material. Maintenance cost is tied to the release cadence: the repository shows releases v2.15.0, v2.16.0, and v2.17.0, with the last push in August 2026. This suggests active development, but you should track each release for breaking changes, especially in the PDF libraries or the database schema.
Alternatives: Comparing Approaches to Self-Hosted Signing
The obvious alternative is DocuSign itself, but that is a proprietary, hosted service that does not allow self-hosting. Other open-source options exist, such as LibreSign or OpenSign, but the README does not mention them. The key difference in approach is that Documenso is a full-stack TypeScript application with a modern web framework, whereas some alternatives are PHP-based or require Java (the README notes that support for opensignpdf, which requires Java, is 'currently planned'). If you want a single-language stack and a modern developer experience, Documenso fits. If you prefer a more established project with a larger community, you would need to evaluate those alternatives separately. The comparison here is not about features but about the underlying technology and licensing philosophy.
What to Verify Before Adoption
Before committing to Documenso, verify that your infrastructure can support the stack: PostgreSQL, Node.js v22, and Docker for development. The README does not specify production deployment requirements, so you must infer them from the development setup. Check the documentation at docs.documenso.com for production guidance, though that is not included in this material. Also, test the PDF signing flow with your actual document formats. The README lists several PDF libraries, but it does not guarantee support for all PDF features, such as complex forms or digital certificates. Finally, review the license terms with your legal team, especially if you plan to modify the code. The AGPL-3.0 is not a permissive license, and you need to understand your obligations.
Editorial conclusion
Adopt Documenso if you need a self-hosted, auditable e-signature tool and you are comfortable with the AGPL-3.0 license, which requires you to release modifications to the source code when you distribute the software. Do not adopt it if you require a commercially supported, permissively licensed solution, or if you expect to accept external pull requests, since the project has paused them. Before deploying, verify your ability to run PostgreSQL, Node.js v22+, and Docker, and confirm that the current PDF signing capabilities meet your legal and workflow requirements.
Community notes