A brief description of the architecture of Papermerge. Papermerge DMS project has 2 parts:
- Web Application
Web application is further devided into Frontend and Backend.
There are other files as well e.g. images and fonts. These, so called static assets, which are copied into Backend. Outcome of webpack project is distributed as part of main web application.
Backend is a standard Django 3.0 application. It uses static files from frontend part. Throughout documentation it is refered as backend because term webapp is more general (webapp = backend + frontend).
Workers perform OCR on the documents. There is a built-in worker in main Papermerge DMS Repository. Built-in worker is called with command:
$ ./manage.py worker
In more advanced setups any number of workers can be used (depends on the number of documents you plan to use). However in such cases:
- a messaging queues like rabbitmq should be configured
- a shared storage - like S3 - should be configured
These advanced deployements are outside scope of this documentation.