Documium EDMS (a document management system) with Django, Django Channels, PostgreSQL, Reddis, RabbitMQ

Tech Stack

  • Django (Python)
  • PostgreSQL
  • Redis (used as in-memory DB for cashing)
  • RabbitMQ
  • CI/CD: Git, Docker, GitLab
  • Google Cloud VM (deployment)

Features

Versioning
Store multiple versions of the same document, and download or revert to a previous version.

Digital signatures.
Verify the authenticity of documents by checking their embedded cryptographic signatures or upload detached signatures for signed documents after they have been stored.

Collaboration tools.
Discuss in the discussion section below each document or comment on new versions of a document.

User-defined document metadata.
Several metadata fields can be associated with a document type according to technical, legal or structural requirements such as Dublin Core.

Metadata fields may have an initial value, which may be static or determined by a user-provided template code extract.

Documents can be downloaded from a variety of sources.
Downloading from local files or server-side files, multi-functional copier, or even email.

Batch download.

Multiple documents can be downloaded in one action.

Clone document metadata to speed downloads and eliminate repetitive data entry.

Preview multiple file formats.
Documium EDM provides image previews for many popular file formats.

Support for desktop document formats.

Documium GED can detect the presence of Libre Office or Microsoft Word and use it to support word processing files, spreadsheets and presentations.

Full text search.
Documents can be searched by textual content, metadata or any other file attribute such as name, extension, etc.

Configurable document grouping.
Automatic linking of documents based on metadata values or document properties.

Advanced access control system.
Role-based access control. An unlimited number of different roles can be created, not limited to the traditional paradigm of administrator, operator, guest.

There is an authorisation for each specific operation performed by the users.

Support for multi-page documents.
Multi-page PDF and TIFF files are supported.

Automatic OCR processing.
The task of transcribing the text of documents by OCR can be distributed among several physical or virtual computers to reduce the load and increase availability.

The current document language is passed to the corresponding OCR engine to increase the text recognition rate.

Multilingual user interface.
Pluggable storage backends.
It is very easy to use third party plugins such as those available with Amazon EC2.

Colour-coded tags.
Tags and colour codes can be assigned for easy recognition.

Workflow.
Keep track of the status of documents, as well as a log of previous status changes.