What core features does Mayan EDMS offer for document management?
Updated
Mayan EDMS is an open-source document management system whose core feature set covers versioning, access control, workflow, document relationships, and administration through both a web interface and a REST API. It fits teams that need to store, control, and route documents at scale and are prepared to run and maintain the software themselves. The project's own site describes it as "the most advanced, scalable, and mature open source document management system," introduced in 2010 and backed by commercial support options from Mayan EDMS LLC.
Document versioning with per-version access control
Mayan EDMS stores multiple versions of the same document. From the stored versions you can download an earlier version or revert the document to it. Each version can carry its own separate access control, so a sensitive revision does not automatically inherit the permissions of the current one. For example, a contract team can keep a redlined draft restricted to legal reviewers while the signed final version is visible to the wider department.
Fine-grained permissions
The permission system is built around atomic operations: the site states there is a permission for every atomic operation performed. In practice this means access is granted per action rather than per module, so you can allow a group to view and download a document without letting them edit metadata, delete it, or change its versions. This is the mechanism to plan before rollout — map roles to the specific operations each role needs rather than relying on broad read/write buckets.
Workflows, linking, and referencing
- Document workflows move documents through defined states and approvals, which is how review and sign-off processes are enforced rather than left to email.
- Document linking and referencing connects related documents so a case file, contract, and correspondence can be navigated as a set instead of as isolated files.
These two features are what turn the system from a file store into a process tool; if your main need is simple storage, they add configuration overhead you may not want.
Administration: web setup, settings, and REST API
Setup is web-based, and the system exposes a comprehensive settings system for configuring behavior centrally. A REST API allows other applications to interact with the system programmatically — useful for integrations such as feeding documents in from a line-of-business app or pulling metadata into a reporting tool. The site also lists insane scalability, citing capacity up to millions of documents and hundreds of millions of pages, and reports hundreds of thousands of active installations.
Scale and maturity signals
| Signal | Reported value |
|---|---|
| Active development since | 2010 |
| Downloads | 10M+ |
| Contributors | 100+ |
| Releases | 200+ |
| Translations | 30+ |
| Apps | 72 |
The site reports deployments across aerospace, military, scientific research, manufacturing, insurance, astronomy, transportation, and banking, as well as government, NGO, academic, and non-profit sectors.
Support and cost considerations
The software is described as free to join, and the project offers professional services: self-guided, basic, advanced, and SLA support, plus migration assistance and training. The site also asks for donations to fund continued development and accepts PayPal. Pricing for the paid support tiers is not stated on the page, so treat "free" as referring to the software itself and confirm support costs directly if you need an SLA.
Is it the right fit?
Choose Mayan EDMS if you need version control with per-version permissions, approval workflows, and API integration, and you have the capacity to operate a self-hosted system. Look elsewhere if you want a fully managed SaaS product with no administration burden, or if your needs stop at basic file storage — the workflow and permission depth would be unused configuration. Before committing, verify the current release, your deployment requirements, and the scope of any paid support against the project's documentation and download pages.