Skip to content
Case studyGovernment
DAMS — Defence Archive Management System

A classified document archive where every read is a token, and every token is logged.

Year
2026
Vertical
Government

The challenge

An institutional military archive has two kinds of reader — staff who work in it daily, and external authorised personnel who need one document, once. Giving the second group an account is a security problem; giving them nothing is an operations problem.

What we built

01Two entry points: a staff admin panel and a separate visitor portal
02Single-use and multi-use access tokens issued per visitor, not per account
03Four staff roles — Admin, Document Manager, Document User, Document Viewer
04Document classification and hard/soft/both format handling
05Semantic search across the archive from the dashboard
06Authorised-personnel registry, category explorer and full audit logging
07Read-only watermarked viewer for visitor access

Outcomes

8
Modules, from onboarding to audit log
2
Separate access surfaces
Token-based
Visitor access, fully audited

How we shipped it

01

Two doors, not one

Staff authenticate with credentials against the admin panel. External authorised personnel never get an account at all — an admin issues them a single-use or multi-use access token, and the visitor portal is the only thing that token opens. The two surfaces do not share a session model.

02

Read-only means read-only

The visitor viewer renders documents watermarked and without download, so the record of who saw what stays complete. Every token issue and every access is written to the audit log as its own event.

03

Classification as a first-class field

Access level and document format are part of the data model rather than a convention in a filename. That is what lets the dashboard count classified holdings accurately and what lets permissions be enforced at the query, not in the template.

Stack

Laravel
Next.js
TypeScript
MySQL
Monorepo
Live · accepting briefs/lat 25.20 lon 55.27
Get started

Aprojectlikethis?

One-page brief, two-week sprint, real exit ramps.

Now booking
2 slots open
Aug '26

next kickoff · week 34

Availability · next 6 weeks
W32
W33
W34
W35
W36
W37
First reply< 24h
median · last 30d4h 12m
24hFirst reply
40+Platforms shipped
4.9★Client rating
SOC 2Ready