Applicant tracking systems

Your resume is read by a parser before it is read by a person.

Most tools show you a document that looks right on screen. That tells you nothing about what a parser pulls out of it. AppKit tailors the application, renders the PDF, then reads it back with five independent extractors and checks the result against what it meant to say. Ten checks. Any failure blocks release.

Invitation only · Your documents stay on your own instance

verification · resume.pdf

Verification gate

resume.pdf · 118 KB · sha256 4f2a…c71d

10 / 10 passed
  • 01Extraction round-trip
  • 02Reading order
  • 03Character map
  • 04Contact integrity
  • 05Fonts embedded
  • 06Not an image
  • 07Page budget
  • 08Spelling
  • 09Placeholder leak
  • 10Stale entities

Any failure blocks release. Nothing is warned about and sent anyway.

10
checks before release
5
independent PDF extractors
0
documents that leave your box
6
ATS platforms understood

How it works

Three steps, and one of them is the whole point.

  1. 01

    Paste the posting

    A URL or the raw text. It reads out the company, the title, the location and the requirements, and tells you which of them it could not find rather than guessing.

  2. 02

    It edits your own document

    Not a template. Your DOCX is edited in place at the OOXML level, so your spacing, your fonts and your layout survive exactly. A PDF master is parsed and rebuilt instead.

  3. 03

    The gate reads it back

    The finished PDF goes through five extractors and ten checks. Disagreement between parsers is itself a failure — if they cannot agree, neither can an ATS.

pipeline

$ appkit generate --job 8821

read postingStripe · Staff Engineer · Remote (US)

edit masterresume.docx · 41 runs touched

renderLibreOffice · 2 pages

extractpdfplumber pdftotext pymupdf pypdf pdfium

verify10 checks

released resume.pdf · letter.pdf

Chrome extension

The application form, filled in for your review.

Reads the page you are on
Six ATS platforms have their own adapter — Greenhouse, Lever, Ashby, Workable, SmartRecruiters and Workday. Everything else falls back to reading the form itself.
Answers in your own words
Drafts come from your resume, your letter and your answer bank. Nothing is invented: an unsupported question comes back empty rather than plausible.
Knows a dropdown from a text box
It reads the real options out of the component, so a select gets a choice from its own list instead of free text that will not match.
You submit, not it
Every field is filled for review. You edit, regenerate with a hint, or overrule it. Nothing is ever sent on your behalf.
side panel · greenhouse.io

Staff Engineer

Stripe · Remote (US)

reviewed

selectAre you authorized to work in the US?

Yes

selectWill you now or in the future require sponsorship?

No

selectPreferred work arrangement

Remote

draftedWhy do you want to work here?

Your payments infrastructure is the part of this…

4 fields filled · review each before you submit

Pricing

Free while it is invitation only.

There is no public sign-up yet, so there is nothing to charge for. These are the tiers as they will stand when there is.

Invited

Free

while in preview

Everything the tool does, for people with an invitation link.

  • Unlimited tailored resumes and letters
  • All ten verification checks
  • Chrome extension and answer bank
  • Application tracker

Pro

Planned

$12

per month, when billing opens

For an active search, where volume and history start to matter.

  • Everything in Invited
  • Job discovery across ATS boards and feeds
  • Conversion analytics by stage and source
  • Priority support, one business day

Self-hosted

Your box

one container stack

Run it yourself. Your documents never leave your own machine.

  • The full stack in Docker
  • Your own AI provider key
  • Postgres and Redis included
  • Bring your own domain and certificate

Send the one you checked.

Access is by invitation. If you have a link, it expires — use it before it does.