← All projects & work samples

Local-first software · document workflows

OWNER-BUILT · SANITIZED INSIGHT

klar. DMS Cockpit

Local companion for Paperless-ngx with case workflows, a scan studio and verified archive handoff. A sanitized architecture description explains the design without private documents or access details.

Python, JavaScript, SQLite, Paperless-ngx REST, OCR, PowerShell, Windows / Hyper-V

KLAR. DMS COCKPIT / SYSTEM VIEW
klar.Local-first software · document workflows
  1. 01Capture
  2. 02Review
  3. 03OCR version
  4. 04Verified handoff
  5. 05Archive confirmation
Schematic illustration · no live data

01 / MY CONTRIBUTION

Responsibility with
domain context.

Owner-built local companion for Paperless-ngx: Python service, SQLite state, browser interface and verified handoff paths. The published material presents architecture and engineering methods only.

THE STARTING QUESTION

An archive stores documents, but the work around it needs additional state: what has been scanned, reviewed, recognized, assigned or actually archived? The cockpit connects those steps without equating OCR output with successful DMS import. Originals and page provenance need to remain traceable.

02 / ARCHITECTURE

From input to
a dependable outcome.

LAYER 01

Capture

Authorized capture with a shared scanner lock

LAYER 02

Review

Preserve source pages and provenance

LAYER 03

OCR version

Review order and document boundaries

LAYER 04

Verified handoff

Bind OCR output to a concrete version

LAYER 05

Archive confirmation

Wait for confirmation from the existing archive

This diagram explains the domain relationship. It does not reconstruct a private production network.

03 / WORKFLOW

A workflow you
can explain.

  1. 01

    Authorized capture with a shared scanner lock

  2. 02

    Preserve source pages and provenance

  3. 03

    Review order and document boundaries

  4. 04

    Bind OCR output to a concrete version

  5. 05

    Wait for confirmation from the existing archive

04 / ENGINEERING

The decisions
behind the interface.

01 / DESIGN DECISION

A companion with a clear boundary

A separate Python process manages cockpit state in SQLite. Paperless is accessed through REST rather than direct database writes. This makes it clear which system owns a state and which step requires confirmation across an external boundary.

02 / DESIGN DECISION

Version, hash and human review

Scan and import paths use source provenance and a concrete review version. Changes to page order or document boundaries are therefore not silent modifications to an allegedly finished document. Partial records and uncertainty remain explicit.

03 / DESIGN DECISION

Separate device access from archive operations

The documented deployment separates Windows device access, local tools and the containerized archive service in a Linux guest. Shared locks protect the scanner from competing jobs. A simulator test is not presented as proof of real paper capture.

Deliberate choices

  • Track preparation, OCR and actual archive confirmation as different states.
  • Keep private documents, databases and credentials out of the source repository and public portfolio.
  • Handle repeated handoff and changed review versions explicitly to avoid silent duplicate imports.
05 / EVIDENCE

What can be inspected.

  • Sanitized architecture description covering boundaries, state flow and the technologies used.
  • Owner-built code and automated checks for cases, locks, provenance and synchronization state.

No real documents, mail, scans, cases or production access form part of this reference. This case study is not a public demo of the private archive.

Published-claims register ↗
FOR YOUR TEAM

Working on
a similar challenge?

Let’s discuss the process, system boundaries and a useful first step.

marvinkamp1988@gmail.com ↗My profile for hiring teams ↗