DAVID REID  —  AI SOLUTIONS · DELIVERY
Product · Designed, built and shipped solo · Berlin

Knockstack

Pick an area on a map, upload a resume, get a stack of tailored cover letters ordered into the shortest walking route.

The problem I had

Handing a letter to a manager still works in hospitality and trades. It is how I have been job hunting. Forty businesses means forty letters, and the moment you reuse one it reads like a mail merge.

What it does

You draw a box on a map and upload a resume. Knockstack takes the businesses inside that box, researches each one, and writes a letter per business against your actual experience. You edit what you want, and it exports the stack in the order you will walk it. Sign in, usage quotas and billing sit around all of that.

No single step there is the hard part. The hard part is that a language model sits in the middle of the chain, so every step around it has to hold when the model is slow, wrong, or unavailable — and one person built and shipped the whole chain.

The decision I am most sure about

When business research comes back low confidence, the letter gets no fact rather than a guessed one. A model will happily invent a plausible sentence about any business you name, and you are handing that page to someone who knows the place better than you do.

Working inside somebody else's rules

Google Places lets you keep a place ID forever and caps everything else at thirty days. That cap decides what the product is allowed to remember, so the data model was built to it rather than patched for it later. Place IDs persist, coordinates are dropped at the boundary, and a test fails if anyone reverses that.

The walking route

Google returns businesses in relevance order, which on a map is arbitrary — you cross the same district three times. Knockstack reorders the stack into a walking route. Across 2880 simulated stacks it cut walking distance by 61.6 percent at the median, never less than 12.8 percent. Straight line distance rather than the street network, so it does not know about canals or rail cuttings.

Where it stands

Everything above works end to end today, route ordering included, so the printed stack comes out in walking order.

I built it because I was doing by hand the thing it does, used it on my own job hunt, and the letter it produced ended in a hire.

Next.js 15, React 19, TypeScript, Claude structured output, Google Places, Neon Postgres, Drizzle, Auth.js, Stripe, Vercel.

Back to work