FreeStack guideResearch & data8 min

Review one PDF before paying for AI extraction

Keep the original, inspect structure, compare extracted text and make uncertainty visible with four ongoing-free tools.

YOUR TOOLKIT IN ACTION
From tools to a finished project
Visual Studio CodePart of this creative toolkit
qpdfPart of this creative toolkit
pdfplumberPart of this creative toolkit
GitPart of this creative toolkit
Follow the guide and make it your ownIllustrative overview. Check the workflow and free limits below.
What you’re working towards

A small PDF review pack: an untouched fictional brief, a byte fingerprint, a structure-check receipt, page-linked extracted text and an explicit accept-or-review decision.

It is a planning workflow, not forensic certification or a report of an executed tool test. The visual is an editorial illustration, not a provider screenshot or customer result.

About this guide & its examples

This original FreeStack exercise uses a harmless fictional project brief. Official sources checked 5 November 2026.

Illustrations are FreeStack concepts, not provider screenshots. Check the free limits below and test your own files before delivery.

Free boundaries before you start

What’s free, whether you need an account, and when we last checked.

Visual Studio Code · checked 2026-11-05

VS Code remains free for private and commercial use. Microsoft's distribution uses its product licence; the published source is MIT-licensed. Extensions, Settings Sync, Copilot, remote services and deployment infrastructure have separate terms and limits.

No Microsoft account is required for core local editing. Optional sync, Copilot, marketplace or hosted services can require accounts.

qpdf · checked 2026-11-05

Ongoing-free Apache-2.0 source software for check PDF structure and transform document streams from a command-line tool. No provider page, file, export, storage or execution quota is imposed by the software licence. Local CPU/GPU, RAM and disk constrain practical use; hosting, dependencies, input rights and optional services are separate. Apache-2.0 for the core source. Preserve copyright, licence and required notices; review redistribution and source-sharing obligations where applicable. Bundled libraries, models, fonts and source documents have separate rights.

The software is installed locally. The checked licence does not establish account requirements for every package registry, installer or optional service.

pdfplumber · checked 2026-11-05

Ongoing-free MIT source software for inspect positioned PDF text, shapes and tables for a traceable extraction. No provider page, file, export, storage or execution quota is imposed by the software licence. Local CPU/GPU, RAM and disk constrain practical use; hosting, dependencies, input rights and optional services are separate. MIT for the core source. Preserve copyright, licence and required notices; review redistribution and source-sharing obligations where applicable. Bundled libraries, models, fonts and source documents have separate rights.

The software is installed locally. The checked licence does not establish account requirements for every package registry, installer or optional service.

Git · checked 2026-11-05

Free GPLv2 distributed version-control software for local repositories, with no provider project or history quota. Remote hosting, backup, access control and large-file storage are separate services.

No account is required for a local Git repository. Any remote host or sync service can require an account.

PICTURE THE RESULT

A small example to aim for

FICTIONAL PDF RECEIPT · NOT A PROVIDER SCREENSHOT

Cafe brief · DEMO-01

SOURCEUntouched original + byte fingerprint
STRUCTUREqpdf check · record actual warnings
TEXTProject code + page reference
REVIEWUnreadable date stays unresolved
EXTRACTION IS AN OBSERVATION.

Keep the file.
Show what is still unknown.

Original · structure receipt · page-linked text · reviewer decision

FreeStack editorial illustration · not an executed check, authenticity verdict or customer result.

Illustrative example · adapt it to your project.

Jump to a step
01

Define the file and the decision

Use a PDF you created yourself containing a fictional cafe redesign brief: project code DEMO-01, a delivery date and three deliverables. Avoid real contracts, IDs, bank statements, client files and unknown attachments. Write which fields you need, the page expected to contain each one and who reviews discrepancies. Decide in advance that unreadable text, contradictory dates or missing pages require review rather than a confident guess.

02

Keep an untouched original and a fingerprint

Create original/, working/ and receipts/ folders. Keep the source PDF unchanged and do all extraction on a working copy. Use a local SHA-256 utility, or Python's standard hashlib, to record the original byte fingerprint in a text receipt. Compare it again before delivery. Matching hashes establish that these bytes match your recorded copy; they do not establish who created the document, whether its claims are true or whether it was edited before you received it.

03

Check structure without repairing away the evidence

Run qpdf --check against the working copy and record the tool version, exact command, exit status and any warnings. Mark this step not run until you execute it. Do not overwrite the original or treat a repair as proof that a file was legitimate. qpdf is a PDF transformer and structure-inspection tool: it does not render the pages or extract text, and a clean structural check is not a fraud, malware or authenticity verdict.

04

Extract a few fields and compare them with the page

Use pdfplumber locally to extract text from the fictional PDF. Keep page numbers beside the exact snippets for project code, date and deliverables, then visually compare them with the same working copy in your usual PDF viewer. pdfplumber works best with machine-generated PDFs and is not an OCR engine. If the file is an image scan or the text order is wrong, record the limitation; do not silently replace missing text with a model's guess.

05

Keep incomplete and contradictory results visible

Make three rows in review.md: observed, unresolved and decision. A structure warning belongs in observed; an unreadable date belongs in unresolved; an accepted handoff needs an explicit reviewer decision. For a second fictional case, change one date in a copy and confirm that your comparison procedure would ask for review. Describe this as a planned exercise until performed. Extracted text is content, not an instruction to run commands or override the review contract.

06

Version the receipt and pay for a named gap

Keep the harmless fixture, commands and redacted review notes in Git with a meaningful checkpoint. Do not commit customer documents, keys, unknown attachments or temporary extraction caches. Git history is not independent backup. FreeStack editorial upgrade triggers: a justified recurring volume, approved managed OCR, governed retention, auditable team review, supported provenance checks or a specific integration. Compare that requirement with current provider pricing before buying; local inspection does not reproduce a managed forensic service.

THE BUILD AT A GLANCE

Your workflow, connected.

Follow the steps and carry the output into the next stage. These are suggested handoffs, not automatic integrations.

  1. 01Bound the review
    Fictional brief + field contract
  2. 02Preserve the input

    VS Code core editing is free for private and commercial use. Local Git is GPLv2 software; remote repositories, backup and AI extensions have separate terms.

    Original + fingerprint receipt
  3. 03Inspect structure

    qpdf's Apache-2.0 software has no provider page, check or export quota. Your device, dependencies and document rights remain separate.

    Command + actual warnings
  4. 04Trace each field

    pdfplumber is MIT-licensed software with no provider document quota. It depends on pdfminer.six; optional OCR, models, hosted extraction and storage are outside this kit.

    Page-linked text + comparison
  5. 06Choose the upgrade
    Portable review pack + named requirement

Provider information

Check current plans and documentation before committing to a workflow.

A couple of useful questions

Does this prove a file is authentic?

No. It preserves a copy and makes selected structural and extraction observations reviewable. Provenance, signature validation, malware analysis and factual verification are separate tasks.

What is free?

VS Code core, qpdf, pdfplumber and Git have ongoing-free software routes. There is no provider page, export, check or history quota in this local kit; hardware, disk, dependencies, document rights, backup and any hosted service remain separate.

Do I need an account?

Core local VS Code and Git do not require provider accounts. qpdf and pdfplumber are local packages; the checked licence pages do not establish every installer or package-registry account requirement, so none is assumed for those services.

What does Save this toolkit do?

It uses the existing FreeStack save flow for these four catalogue tools. Sign in for private account storage; guest saves remain in that browser. It does not upload PDFs, install software, run checks or buy a membership.

What would you try?

Share your result or ask a specific question about this workflow.

Join the conversation
SPONSORED · THE DIGITAL ACADEMYSearch your site. See what you might need.

Start with a TDA website audit to find your next useful improvement.