Feature catalog

Everything Proof does, in the order you’ll use it.

Every capability below is tagged with its real status.

Discover & ingest

the day ends with an inventory, not a guess

  • Domain crawler

    Status: Live

    Point Proof at a website and it finds every linked PDF: the crawl respects robots.txt, paces its requests to each site, and picks up where it left off after an interruption. Findings are reviewed, then imported. Most tools wait for you to upload files — Proof goes and finds them.

  • Direct upload

    Status: Live

    Staged multi-file dropzone: drop files, set Collection, tags and language, upload. Multi-file drops auto-create a Collection; exact duplicates are deduplicated by content hash.

  • URL import — single + bulk

    Status: Live

    Paste one URL or a list. Files are fetched safely in the background (HTTPS only, size limits, no requests to private networks), with per-item status that survives reloads, retry and cancel. Language auto-detected.

  • Zip / folder import

    Status: Live

    Upload a .zip of PDFs — up to 500 MB / 1,000 files — extracted and run through the same ingest path.

  • Large-import experience

    Status: Live

    Priority lanes keep interactive work responsive while a 3,000-document import churns; a completion email tells you when the corpus is fully analyzed.

  • Imports hub & source sync

    Status: Live

    Every import — crawl, upload, URL, zip — lands in one hub inside the Library with per-batch status. Documents you already hold are re-checked against their source and refreshed when the published copy changes.

The Library — operating a corpus

sort 3,000 documents by what blocks them

  • Library workspace

    Status: Live

    A three-column workspace: status views with live counts, a feed grouped into priority bands a remediator actually works in (needs-you-now, quick-wins, in-flight…), or a dense table view.

  • Signal cards + peek preview

    Status: Live

    Every document shows what you need to plan it: its verdict, how many checks fail, what blocks it, how much fixes automatically, and estimated hours. Hover for a full-size peek.

  • Tags, Collections & saved views

    Status: Live

    Three ways to organize, plus automatic filters (image-only, has-table, untagged, 25+ pages). Bulk tag, assign, archive, and bulk auto-fix.

  • Version history

    Status: Live

    Every fix or re-upload makes a new version; every version is kept and the source is never overwritten. Per-version download and report regeneration.

  • CSV export

    Status: Live

    One-click export of the corpus state, honoring the live filter and sort — feeds your own reporting.

  • Publication points

    Status: Live

    One document, every address: Proof records each URL where a document is published, rolls publication state up per address, and surfaces drift and stale publications on the admin Source Integrity dashboard. After approval, Proof lists the addresses still serving the old copy, so you know where to publish the fixed file.

  • Scheduled source monitoring

    Status: Live

    Source-integrity sweeps on a cadence you set — daily, weekly, or monthly: every publication address re-checked and drift surfaced in a digest. Refreshing a drifted certificate stays a human-confirmed step.

Analyze — the verdict engine

evidence, not just verdicts

  • Triage engine

    Status: Live

    Every document checked against a WCAG 2.1 AA rule profile built on veraPDF, the open-source PDF/UA validator, plus Ockem’s own detectors for the checks it has no clause for. Runs at import and after every fix.

  • Evidence on every finding

    Status: Live

    Image crops of the offending figure, extracted OCR text, per-page reading-order flags, per-run color-pair analysis. You always see why a rule fired — every check Proof asks a person to make points at the exact spot on the page, including language of parts and non-text contrast.

  • Three verdicts, not two

    Status: Live

    Compliant (green), Needs review (amber), Failed (red — confirmed violations only). A document awaiting human review is never called failed.

  • Contrast that ignores hidden text

    Status: Live

    The contrast check sets aside text hidden behind full-page artwork — a kind of false alarm other checkers hand you raw.

  • Live progress streaming

    Status: Live

    Long operations stream page-by-page progress — “Tagging page 12 of 84” — as one continuous task.

  • Reports & analytics

    Status: Phase 1 live

    Exposure KPIs, remediation-path lanes, a live effort calculator (hours → FTE-weeks), per-criterion WCAG scorecard, analytics CSV. A Certification & Evidence Register lists every certificate and who attested it, and a Remediation Ledger records what was done to each document — both exportable as CSV.

Remediate — fixers and honest accounting

a fix isn’t counted until re-verified

  • 42 automated fixers

    Status: Live

    Structure and tagging, tables, text and language, visual contrast, links and forms — deterministic fixers covering the mechanical majority of findings.

  • Auto-fix bundle

    Status: Live

    One action runs every safe applicable fixer, re-verifies with the rule engine, and commits only if the verdict improves — one new version, per-fixer history.

  • Content-loss gate

    Status: Live

    A fix that would remove or hide text the document had before is refused, and the run carries on from the earlier version.

  • Silenced text

    Status: Live

    Finds sentences printed on the page but marked as decoration, so no screen reader announces them. A remediation restores the readable passages automatically and lists the rest for a person to decide.

  • Stricter structure checks

    Status: Live

    A list or data table tagged as plain paragraphs no longer passes, and neither does a link tagged around the wrong words. Proof shows exactly where.

  • Guided decision queues

    Status: Live

    Contrast reframed as 2–3 decisions instead of 550 findings; reading-order review with numbered overlays on flagged pages only; scan-confirm-dismiss queues for figures and artifacts; form fields checked for names that identify the field, named from the printed label, with focus order walked the way a screen-reader user tabs through them.

  • Brand-aware contrast fixes

    Status: Live

    Every color pick shows your organization’s brand colors and the replacements you chose before, each contrast-checked. On scanned pages, contrast is measured from the page image and you are asked only where it falls short. Color changes are never applied without a person.

  • Tagging comes first

    Status: Live

    On documents with no tags at all, Proof routes you through tagging first instead of letting fixers silently do nothing. No fake progress.

  • Attributed attestations

    Status: Live

    Judgment criteria are cleared by attestations recorded against the person who made them. The certificate names your organization as the attesting party — and the person too, if you choose. An attestation can never override a machine failure.

  • Scans & OCR

    Status: Live

    An unreadable text layer is recovered by reading the page. OCR follows the document’s declared language across 37 language packs, 31 recognized automatically when nothing is declared.

  • Honest dead-end escalation

    Status: Live

    Documents whose source content is unrecoverable get a “needs re-authoring” advisory and an escalation path — never an infinite retry loop. On a document Proof couldn’t finish, “Have Ockem do this” asks our experts for a price in documents, which you accept or decline in Proof.

  • In-browser table editor

    Status: Partial

    Mark header rows and columns, set scope, author grids the detector missed — even when the table is only a picture, via region OCR — every edit guarded by a live re-check that aborts anything that would fail a new rule.

  • Image optimization, with consent

    Status: Live

    Oversized images can be re-encoded to make the delivered PDF smaller — only after you say yes, because it changes the file you publish.

AI assistance — local-first

AI drafts, a person approves

  • AI-drafted alt text & descriptions

    Status: Live

    One picture is one question: a vision model drafts a short alt and an extended description in one place, with the figure crop beside the draft; a human approves or edits before anything is written. A picture that is really text is answered “It’s text” and transcribed. Describe an image once, and wherever it appears in your other documents Proof offers your approved description as a draft to review.

  • Table summaries & titles

    Status: Live

    LLM-drafted table summaries, and a document title drafted from page 1 when the title is missing or just echoes the filename — human-reviewed, always.

  • Local-first inference

    Status: Live

    Models run self-hosted on hardware we operate. No customer document content goes to a third-party model, and documents in your workspace train our models only if you turn that on — a decisive answer for government and healthcare security reviews.

  • Auto-tagger, tested before it ships

    Status: Live

    Every change to the automatic tagger is measured against a benchmark and ships only if it makes nothing worse for compliance or safety. One version was built and deliberately not shipped because the test caught a regression.

Automate at corpus scale

a whole library through the automated pass overnight

  • Proven under load

    Status: Live

    A four-hour production soak test applied 1,000 documents an hour of analysis load — checking, not fixing — and finished with zero failures and zero lost documents across ~18,700 jobs, including through a full production redeploy mid-run.

  • The Work surface

    Status: Live

    A corpus momentum funnel, a computed next-best-move card, one-click program runs, and an activity feed with outcome deltas.

  • Batch remediation programs

    Status: Live

    Named programs scoped to the corpus, a folder, or a filter: Baseline Auto-Remediation, Metadata Sweep, Auto-tag, OCR, AI-Assist. Programs converge — re-running picks up only new or changed documents. A running remediation reports its phase, progress and time left; the report says what the run cleared, and concurrent remediations share your organization’s capacity fairly. Each document shows its turnaround: ordinary documents are usually done within the hour, while scans and long files run in the background, typically the same day, without holding the rest up.

  • Review queues at volume

    Status: Live

    Draft queues (accept/edit/reject AI suggestions) and attest queues (confirm human checks), sorted by completion leverage — “N documents are 1 check from Compliant” — with keyboard shortcuts.

  • Fair sharing between organizations

    Status: Live

    Each organization’s work is rate-limited and queued fairly, so another organization’s 3,000-document batch can’t slow your interactive work. Automated tests that must pass before every release check that organizations stay separate.

Workflows — orchestrating the work

from claim to approval, with clear rules at every step

  • Document status flow

    Status: Live

    Every document moves through an explicit status flow — claimed, in review, escalated, approved — with the approve action gated so a document sitting in amber or red can never be signed off. The gate is the product.

  • The queues are the workflow

    Status: Live

    Contrast decisions, reading-order review, figure scan-confirm-dismiss, AI-draft accept/edit/reject, and human attestation each run as a dedicated queue — sorted by completion leverage (“N documents are one check from Compliant”), keyboard-driven, with a live count of what’s left.

  • Claim, escalate & approve

    Status: Live

    Pull a document to yourself to work it, escalate an unrecoverable source for re-authoring instead of looping forever, and approve only once every check — machine and human — is resolved.

  • Comments & status history

    Status: Live

    Per-document comments and a full status history record who did what and when — the review conversation and the audit trail live on the document, not in a folder of emails.

  • Review gates & team access

    Status: Live

    Configurable review gates enforced at the approval transition — org-wide or overridden per folder — plus teams with per-user library access, managed from the Tenant Admin console.

  • Assign, hand in, approve

    Status: Live · team plans

    Assign documents with a due date and a hand-off note, and mention a teammate. Finished work is handed in for approval; an approver — who needn’t be an administrator — approves it or sends it back with a reason.

  • Automatic assignment routing

    Status: Live · team plans

    Routing rules send newly imported documents to a person by folder, tag or language, and assigned work leads each member’s feed.

  • Digests, following & hand-on

    Status: Live · team plans

    Follow a document or a whole folder and get one daily digest of what changed; escalations reach a person. When someone leaves, their open work is handed on instead of orphaned.

Certify & deliver

the paper trail is the deliverable

  • The Ockem Proof certificate

    Status: Live

    Every approved document ships with a rendered accessibility report: verdict and seal, per-criterion results, original→delivered comparison, and the attestation record — stamped with your organization’s logo. It names what was checked by machine, what your organization’s attester of record confirmed, and what was not tested; N/A is rendered honestly, never a vacuous green. It names the standard it was scored against and prints dates in your time zone.

  • Public certificate verification

    Status: Live

    Every certificate carries a QR code resolving to a public verification page — an auditor or constituent can confirm a certificate is genuine without trusting the attachment.

  • The compliance claim, engineered

    Status: Live

    Machine checks + attributed human attestations + an approval gate: a document is never certified while any check is unresolved, and a check the audit could not run stays pending rather than “not applicable”. Automated + attested — never “fully automatic.”

  • Approval gate & lifecycle

    Status: Live

    A document status flow with claim, escalate, and approve actions, status history, and per-document comments. Amber and red both block approval. A new version after approval withdraws the certificate until a fresh check issues a new one, and a re-issued certificate still verifies and points to its replacement.

  • Downloads & bulk delivery

    Status: Live

    Remediated PDF + certificate via expiring links that re-issue on demand — a saved export never rots. Bulk ZIP assembly parallelized for 200+ document deliveries, tracked in an org-wide Downloads manager.

Platform, security & trust

answers that are structural, not contractual

  • Two-layer tenant isolation

    Status: Live

    Every query is org-scoped in the application and enforced by PostgreSQL Row-Level Security underneath. If the organization can’t be confirmed, access is refused, and automated tests that must pass before every release cover it.

  • Identity, SSO & MFA

    Status: Live

    One global identity, multiple organization memberships, on team plans Google SSO or sign-in through your own identity provider (OIDC) with mapping rules that place each member in the right team and project, MFA asserted by your provider honored, optional TOTP two-factor, a workspace picker for people who belong to several orgs.

  • Tenant admin console

    Status: Live

    Self-service admin for org owners: people and roles, teams and access grants, workflow review gates, security policy, audit activity, webhooks, notification defaults for new teammates, and an email delivery log.

  • Data handling

    Status: Live

    Org-prefixed object storage, presigned expiring download links, structured logging, nightly backups. Model training on your documents is off unless a workspace administrator turns it on. Trial documents and the sample a free assessment scores are deleted after 30 days; a full import prepared for an assessment is deleted 90 days after its last activity.

  • Projects

    Status: Live

    Bring your agencies under one contract: one project per agency, with its own people, its own library, imports and crawls, and project-level access at read, work or admin. A Home page shows what is running now and finds any document across every project you can open; each project has its own address, and each browser tab is scoped to one tenant by URL.

  • Phone & tablet

    Status: Live

    Review and decide from a phone or tablet: the Library, the review queues, and each document’s Steps and Page tabs. Proof’s main pages reflow at 320 px wide with no sideways scrolling (WCAG 1.4.10); drawing tools ask for a larger screen.

  • Webhooks

    Status: Live

    Send certification, escalation, assignment, approval, import and remediation events to your own systems. Each endpoint shows its health; after ten failed deliveries in a row it is switched off and your admins are emailed.

  • Self-serve signup

    Status: Live

    A document-pack purchase provisions the organization, admin identity, and prepaid document balance — no sales call required. Admins are emailed when the balance runs low and again at zero.

  • Complex-file prices up front

    Status: Live

    Every file is checked for free first. A file that needs far more work than its page count suggests shows a fixed price in documents before anything is spent — accept one, accept several at once, or skip.

See it run on your own document.

Free, no account: one PDF of up to 10 pages and 50 MB per verified email, remediated file and verification record included. Certify it for $59 when you’re ready.

Feature catalog — Ockem Proof