Skip to content

About

Local-first manager for your document archive in Google Drive, OneDrive, Dropbox or any folder: OCR search, filing suggestions, bills with due dates, collections. Every change previewed and undoable; never deletes a file. macOS, Windows, Linux.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

Digital Archive Manager

CI License: MIT Platforms

Your paperwork, filed and findable. Digital Archive Manager (dam) is a local-first app for the documents you keep in Google Drive, OneDrive, Dropbox, iCloud Drive or any plain folder. It reads every document (with OCR for scans), suggests a name and a folder for each new one, keeps your bills and to-dos in trays, and lets you search everything, without ever deleting a file.

The Inbox: a new bill with its suggested name, the scanned due date, amount and IBAN, ready to file

Why you might like it

  • Safe by design. dam never deletes your files. Every change is shown before it happens, recorded, and can be undone. "Delete" means moving to a To Delete folder that you empty yourself. Important files are locked against renaming and moving until you unlock them, and you can lock any file.
  • Decide on paper, file in one go. Save a scan straight into the inbox's To pay or To action folder, or put a printed QR sticker on the paper before scanning (tick ★ or ! on it to star it or mark it Important). dam fills in the tray, folder and tags from that, and File N marked files the whole batch after one look, with one Undo.
  • Your folders, your cloud. It works on an ordinary folder that your sync client already keeps in sync, so there is no new account, no upload and no lock-in. Stop using dam and your archive is still just folders and files.
  • Private. Everything runs on your computer; the app only listens on 127.0.0.1. The optional AI help sends text only when you click, after showing you exactly what will be sent, and never from the folders you exclude (by default medical, work and other people's documents; change the list under Activity → AI).
  • Fast filing. New documents land in an inbox. dam reads them, proposes a name, a folder (from your rules, or from where similar files went) and tags, and files them with one key. Rules are drafted from how you file and proven against the documents you filed before you save them. A rule can match words or a picture, such as a logo, in an area of page 1, and can file per person, since the address area tells who a letter is for.
  • Bills that pay themselves (almost). Due dates, amounts, IBANs and references are picked up from the scan. The To pay tray shows what is due, with a copy button on every field, and for Finnish bills a bank barcode to scan with your banking app.
  • Collections for things in progress. Group the documents of a house sale, a renovation or a court case, with notes and a checklist, without moving them. Add a whole folder and everything in it belongs, including what you put in it later. Collections nest, and each one opens in Browse beside your folders.
  • Tags and search. Search from anywhere with ⌘K, or in Browse, by words, tag, sender, ID or IBAN. Browse's Tags tree lets you rename, merge and group tags, each change with Undo.
  • Relatives: a family tree for each document. Every document shows the files it belongs with, and why: the same sender, reference number, IBAN, collection, tag, folder or person. Last year's bill, the contract behind it and the scan still in the inbox show up together; open the connections view to see them by folder, compare one side by side in Quick Look, and tag, collect, move or link them together in one undoable step. Built only from what you stored; an optional AI pass finds more, on a click.
Browse, a contract's file panel: its Relatives, best first, with the two bills still in the inbox on orange cards Show connections: the contract's relatives by folder with lines to each, and what it has in common with the plan
Relatives: the files a document belongs with, and why Show connections: the whole family by folder
Today: what is due, what is waiting in the inbox, the collections to do, starred files and the reminders Pay mode: payee, IBAN, reference, amount and a bank barcode in large type
Today: what needs you, at a glance Pay mode: check the details, scan, done
Browse: folders on the left, and for the selected file its tags, collection, summary, a locked padlock and its Relatives Activity: every change in plain words, each with its own Undo
Browse: folders, tags, summaries, Quick Look Activity: every change, each with Undo
A collection in Browse: the Collections tree with its nested collections, its summary, what needs attention, its notes and checklist, and its files Browse's Tags tree: every tag with its file count, in groups, and the files tagged home
Collections: a house sale in one place, nested, nothing moved Tags: rename, merge, group and pin, each with Undo
The Inbox with Draw a box on: two boxes drawn on page 1 of a water bill, with the Boxes on page 1 panel beside it Make a rule: the words in the area, the folder and tags to file with, and the test against the documents filed before
Boxes on page 1: draw over a letterhead to start a rule Rule sheet: proven against your filed documents first
A sheet of QR stickers for the filing codes P, A and R, each with star and Important tick boxes Activity, AI calls: this month's spend, the AI switch and the folders that are never sent
QR stickers: decide on the paper before you scan AI settings: spend, the switch and the folders never sent

Quick start

You need uv and Node.js 22 or newer.

git clone https://github.com/KalastajaM/digital-archive-manager.git
cd digital-archive-manager
cd backend && uv sync
cd ../frontend && npm ci && npm run build
cd ../backend && uv run dam serve

The same commands work in PowerShell on Windows. dam serve opens the app in your browser at http://127.0.0.1:8765; you can install it as its own app window from Chrome or Safari.

On first start dam asks which folder is your archive. It finds the folders of Google Drive, OneDrive, Dropbox, iCloud Drive, Nextcloud and others for you, or you pick any folder. Then either:

  • use an existing archive as it is: dam indexes it and changes nothing until you ask, or
  • start a new archive: pick a starter layout (Household, Minimal or your own), preview the folders, and create them (undoable, like everything else).

Just want to look around first? Create a demo archive with made-up documents:

cd backend
uv run dam archives add Demo --demo --folder /tmp/dam-demo-archive
uv run dam --archive Demo serve --port 8766

You can keep several archives (say your real one and a test one), each with its own settings, and switch between them from the top of the sidebar.

Platform support

macOS Windows Linux
Index, search, file, undo, trays, collections, export ✓ ✓ ✓
OCR of scans and photos ✓ Apple Vision ✓ with Tesseract ✓ with Tesseract
Quick Look thumbnails of any file type ✓ PDFs and images PDFs and images
Desktop notifications, daily reminder job ✓ e-mail only for now e-mail only for now
Collection links in the Ongoing folder, and Link when dropping files ✓ needs Developer Mode ✓

Details are in the technical reference.

Countries and languages

dam was built for Finnish post, and some of what it reads from a document belongs to one country or one language:

Today
Bank barcode on bills (pankkiviivakoodi) Finland
Payment reference numbers RF (international), the Finnish viitenumero and the Dutch betalingskenmerk
Business IDs the Finnish Y-tunnus; the Dutch KvK-nummer, btw-id and RSIN
IBAN any SEPA country
Dates and amounts day-first dates with dots, dashes, slashes or month names; € 1.234,56 and 1 234,56 €
Where the address sits on page 1 of a letter the country's usual place (Finland: SFS 2487; the Netherlands: an estimate from PostNL's rules); you can draw your own, for all letters or for one
Due-date and total labels, month names Finnish, Swedish, Dutch and English
OCR the languages you set in ocr_languages

You choose the countries and languages in Settings, Reading documents, and the first-run screen asks where your post comes from. Each country and language is a pack: another country's reference numbers and address area, or another language's words, are added as a pack. The Netherlands pack is new: its label words and address area are estimates that still need checking on real Dutch post. Still to come: the bank barcode as a pack. If you would like your country supported, open an issue with a few example bills and letters (with personal details removed), or see Contributing.

Documentation

  • User guide: how dam works, every screen, keyboard shortcuts, trays, collections, reminders, the optional AI and what dam never does (also under Help in the app)
  • Technical reference: install, the command line, config files and rules, the API and the safety model in detail
  • Changelog
  • Contributing: development setup, tests and the safety rules every change must keep
  • Security policy

License

MIT © KalastajaM. The optional Outlook .msg support (dam[msg]) uses extract-msg, which is GPL-licensed and not included in the core install; see licensing.

About

Local-first manager for your document archive in Google Drive, OneDrive, Dropbox or any folder: OCR search, filing suggestions, bills with due dates, collections. Every change previewed and undoable; never deletes a file. macOS, Windows, Linux.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages