AFTRIMGE 0.2.0

Your files have a history.

See it. Understand it. Preserve it.

AFTRIMGE watches the folders you choose and records every change as it happens: each version, each rename, each deletion. You can replay the project, inspect any past version, verify that what is stored is still exact, and put it back. All of it on your own machine.

  • Local archive, no account
  • No network code in the application
  • SHA-256 content addressing
  • Windows and Linux

A demonstration project: 5 files, 13 versions, 16 recorded events, including a rename, a deletion and two versions with identical content stored once. The interactive replay needs JavaScript; the same history is laid out in the preview below.

Demonstration data, replayed in your browser. Nothing reads your files.

01The problem

Work changes faster than anyone remembers it.

Files are saved over. Exports replace exports. A folder is renamed, a version is deleted to make room, and the record of how a project got here becomes a pile of filenames that meant something last week.

Backups keep copies. Version control asks you to commit. Neither describes what actually happened to a folder of working files while you were busy working.

02The idea

A file is not a file. It is an object with a history.

Identity, not path
A rename or move keeps the file's history. A path is where the file is; the identity is what it is.
Versions, not overwrites
Each settled change is a version with a time and its exact bytes. A later save never replaces an earlier version.
Content, stored once
Bytes are stored under their SHA-256 digest. When a file returns to earlier content, the new version points at the object that already exists.

03How it records

From a saved file to a version you can trust.

Every step below is how the engine works, in order. Nothing is uploaded, and nothing is inferred at this stage.

  1. 01

    Watch

    Operating-system change notifications for the folders you chose, plus a scan on launch for what changed while AFTRIMGE was closed.

  2. 02

    Settle

    A file must stop changing before it is read, so a save in progress is not recorded half-written.

  3. 03

    Hash and store

    The bytes are hashed in the same pass that writes them to staging, synced, then published under their digest.

  4. 04

    Record

    A version and its event are written to SQLite in one transaction. What was observed is never rewritten.

  5. 05

    Return

    Replay, compare, inspect, verify and restore, all reading from that archive.

04Timeline

Watch one file become what it is.

The poster from the demonstration project: created, changed, renamed, changed again. Step through it.

  1. CREATEposter.pngversion 01 · 0dd8b651ad16FEB 03 · 10:12
  2. MODIFYposter.pngversion 02 · 6a4e0ecc99a0FEB 11 · 11:02
  3. RENAMEposter-final.pngsame identity, still version 02FEB 17 · 12:15
  4. MODIFYposter-final.pngversion 03 · 4b7c46a3f572MAR 05 · 14:30

05Archaeology

An image arrives by email. Where did it come from?

Import an image AFTRIMGE never watched and it measures it against folders you nominate and everything it has recorded: resized, cropped, recompressed, regraded, or placed inside another image. There is no machine learning model; every result is a graded measurement, and only identical bytes are a fact.

FACTDUPLICATE_OFmoodboard-reference.jpg
INFERREDRESIZED_FROMposter-final.png (version 3)
POSSIBLEPOSSIBLY_DERIVED_FROMhero.jpg (version 1)

Demonstration findings for from-client.jpg. Grades follow the engine's rules; the evidence behind each is shown in Evidence.

06Integrity

Stored is not the same as intact. AFTRIMGE checks.

Verification reads every byte of an object and hashes it again. The demonstration archive contains one object whose bytes were damaged and one whose bytes are gone. Run the check.

  1. VERIFIED027f75959fb4…palette v1
  2. VERIFIED0dd8b651ad16…poster v1
  3. VERIFIED3b6cb9eb76bd…moodboard-reference.jpg
  4. VERIFIED4b7c46a3f572…poster v3
  5. VERIFIED5ef4ce10fb85…palette v2
  6. VERIFIED6a4e0ecc99a0…poster v2
  7. VERIFIED6c9c93a6cd0d…notes v2
  8. VERIFIED851acacaa25b…hero v1
  9. VERIFIED8862d62d4c12…logo v3
  10. VERIFIED8b6e5bcfe083…notes v1
  11. CORRUPTa7349e56f040…logo v2
  12. MISSINGad9255a05823…banner v1
  13. VERIFIEDc606667f03b6…logo v1

07Recovery

Put a past version back, and prove it arrived.

A restore is planned before anything is written. The stored bytes are checked, written beside the target, checked, swapped in, and checked a third time. The restore is added to history; nothing later is removed.

  1. 01Current
  2. 02Choose a version
  3. 03Inspect the plan
  4. 04Restore
  5. 05Verified

08Storage

Know exactly what is kept, and why.

Every piece of content in the archive has one of four states, decided by one rule: something holds it (a retained version, an archived image, a preservation you recorded) or nothing does.

HELD12
RECLAIMABLE0
MISSING1
UNTRACKED1
HELD
Something holds it. A sweep will not remove it.
RECLAIMABLE
Nothing holds it. A sweep may remove it, and a dry run shows exactly what first.
MISSING
Known, and its bytes are not on disk. The record is kept on purpose.
UNTRACKED
Bytes with no record, left by an interrupted write. Removed only once 15 minutes old.

09Evidence

What was seen, what was measured, what was concluded. Never blurred.

AFTRIMGE keeps three kinds of statement apart in its data and in its interface. A deduction is never displayed as if it had been observed.

RECORD

Observed or performed. The operating system, a SHA-256 hash, or you said so. No reasoning involved.

poster-final.png (version 3) was recorded at MAR 05 · 14:30 with content 4b7c46a3f572.

MEASUREMENT

Computed deterministically from known inputs. A number, not a probability, and it says nothing about intent.

dHash distance after scaling: 3 of 64 bits (demonstration value)

Scale: 0.500 x 0.500 (demonstration value)

Mean residual: 0.021 (demonstration value)

DEDUCTION

A deterministic rule applied to records and measurements. Reproducible, and still a conclusion rather than an observation.

Aligned residual under the strong threshold for the resize test. Grade INFERRED.

10Local first

Your archive lives with your work.

YOUR MACHINE

AFTRIMGE

  • Capture
  • History
  • Analysis
  • Integrity
  • Recovery
SQLite indexObject store

your watched folders

no account · no server · no telemetry

AFTRIMGE and its archive run entirely on your computer. Nothing is sent to a server.

The archive is a folder you can see: a SQLite database and a content-addressed object store. Copy it and you have copied the archive.

  • The application contains no network code. It makes no requests, checks for no updates, and sends no telemetry or crash reports.
  • No account, no sign-in, nothing to configure on a server.
  • AFTRIMGE never writes into a folder it watches, except when you restore into it.
  • Portable mode keeps the application and its archive together in one folder you can move.

Local is not the same as encrypted: the archive is not encrypted, so it is as private as the disk it is on. The Windows installer can download Microsoft's WebView2 runtime if it is missing. Data and storage.

11Why AFTRIMGE

Five decisions the whole product follows.

  1. History, not snapshots.

    AFTRIMGE records evolution: when each version appeared, what it replaced, where the file went. Not a copy of a folder at midnight.

  2. Evidence, not guesses.

    Recorded events, measurements and deductions are kept separate, graded, and each can explain what it rests on.

  3. Local custody.

    The archive lives with you. There is no cloud component to trust, pay for or lose access to.

  4. Recovery, not just retention.

    Any kept version can be inspected, compared and restored, with the result verified byte for byte.

  5. Deterministic, not opaque.

    Every measurement is reproducible from the same inputs. No model decides what your files are.

12Architecture

Engineered for the day something goes wrong.

Identity comes from the bytes
An object's name is the SHA-256 of the bytes AFTRIMGE actually wrote, computed in the same pass. A caller's claim is never trusted.
One authority per question
What is held, whether bytes are intact, where the archive is, what version this is: each is answered in exactly one place in the code.
Tested by killing the process
The test suite terminates AFTRIMGE mid-capture, mid-collection and mid-restore, then checks the database and every kept version.
One copy per archive
An operating-system lock stops a second launch from opening the same archive, and it is released however the first one ends.
Backup before format upgrades
A newer version copies and checks the database before changing its format, and changes nothing if it cannot.
Refuses hostile paths
A restore cannot leave its project, including through a junction or symbolic link, and refuses names Windows would treat as devices or streams.

13Interactive demo

Open the archive and try it.

A working model of the AFTRIMGE interface on a built-in demonstration project. Scrub the timeline, inspect storage, apply retention, verify, plan a restore, read the evidence. Nothing here reads or writes a file on your computer.

Open the demo full width, with a guide

14Download

AFTRIMGE 0.2.0

Windows x64

  • Installer2.8 MB
  • Portable3.6 MB

Installed per user, or portable in one folder.

Linux x64

  • AppImage78.9 MB
  • Debian package3.8 MB

AppImage without installation, or a Debian package.

Verified, not signed

The builds are not code-signed yet. Every file is published with its SHA-256 checksum and a record of how it was built and tested, so you can check exactly what you downloaded.

16Questions

The questions worth asking first.

Does AFTRIMGE upload my files?

No. AFTRIMGE's own code makes no network requests of any kind.

Does AFTRIMGE use AI?

No. There is no machine learning model in AFTRIMGE and nothing is sent to one. Recording, deduplication, integrity checks and restore are exact operations on bytes and SHA-256 digests. Image archaeology compares images with deterministic measurements, such as perceptual hashes and aligned pixel residuals, that give the same result every time for the same inputs, and grades what it finds.

Does AFTRIMGE work offline?

Yes. The application contains no network code: it makes no requests, checks for no updates and sends nothing. The only network access involved is the Windows installer downloading Microsoft's WebView2 bootstrapper when the WebView2 Runtime is missing, which Windows 11 already includes.

Is the Windows build signed?

No. The Windows and Linux builds are not code-signed yet, so Windows SmartScreen may say the publisher is unknown, and on a computer where Smart App Control is enforcing it may block the program. Every file is published with its SHA-256 checksum and a record of how it was built and tested.

What does AFTRIMGE not guarantee?
  • It is not a backup. The archive is on the same computer as your work; copy the archive folder elsewhere to protect against losing the disk.
  • The archive is not encrypted.
  • Only content in folders you chose, recorded while AFTRIMGE could watch or scan them, is in history. Files larger than 256 MiB have their versions recorded without their bytes.
  • Integrity verification proves stored bytes have not changed. It does not prove who made them.
  • Archaeology results other than identical bytes are measurements graded INFERRED or POSSIBLE, not proof of where an image came from.
  • Power loss and a genuinely full disk have not been tested.
What happens if the application closes during an operation?

In testing, AFTRIMGE's process was terminated repeatedly while capturing, collecting and restoring. The database was never corrupted, no kept version lost its bytes, and a restored file was always one complete version. Leftover temporary data is cleaned up or reported. Power loss has not been tested.

All questions

17Start

Stop naming files final.

Point AFTRIMGE at a folder. From then on, its history is kept.