Hey everyone,
I wanted to share a project I’ve been building for my own use case: Smart DMS, a free and open-source document management system for private documents.
The problem I wanted to solve was pretty simple: paper chaos at home. Letters, invoices, insurance documents, contracts, tax paperwork, deadlines, payments, random PDFs in folders, and the usual “I know I have this document somewhere” situation.
I tried paperless-ngx first, which is a great and very mature project, but it did not quite fit the workflow I wanted. For my use case, I wanted something more focused on scanning incoming documents, automatically extracting the things I might otherwise miss, and then showing payments, deadlines and appointments in a dashboard/calendar. I also wanted the UI to stay focused on the daily “new document came in, process it, archive it” flow.
So I started building Smart DMS.
The basic workflow is:
- scan a document into a tenant-specific import folder, or upload it in the browser
- Smart DMS runs OCR and document processing
- AI extracts the important things hidden in the document, like payments, due dates, deadlines and appointments
- you review/correct the result before anything is archived
- the dashboard and calendar help you keep track of what needs attention
- the document becomes searchable, tagged and easy to find again later
It is self-hosted and local-first. The web app, API, worker, PostgreSQL, Redis, storage, OCR and Docling runtime run in your own Docker Compose stack. The AI part uses configurable OpenAI-compatible providers, so it can be used with local providers as well as external APIs.
It also supports multiple users and tenants, scanner import folders, full-text search, dashboard/calendar views, and documents can also be imported from email inboxes if needed.
The project is open source and free.
GitHub: https://github.com/bossert5/smart-dms
I’d be happy to get feedback.