All projects
Experiment · 2026

Claude Stack

Next.js · TypeScript · Vitest · Vercel

claudestack-three.vercel.app

What it is

A personal experiment, and the only project here without a business behind it (yet). It exists to get small-business operators onto Claude Code, starting from software they already own rather than from a blank terminal. Paste a website address; it identifies the tools that site already runs on, explains what each could do from inside Claude, and hands back a setup bundle to paste into Claude Code. It is aimed at people who run a company's websites but are not developers, on the premise that the barrier was never capability but not knowing this was possible.

The whole ask on arrival: one address.

What it does

Detection reads four signal sources in rough order of reliability: HTTP response headers, markers in the HTML such as generator tags and plugin paths, DNS records, and the server's IP range. DNS turns out to be the richest and least obvious. Mail records name the email provider, nameservers name the registrar, and verification records name SaaS tools outright. It is deliberately blind to the back half of a stack — databases are server-side, and apps often sit on a subdomain that is never fetched — so having found part of the stack it asks about the rest rather than showing a blank catalog. The output is a working set of config files and a setup prompt.

A scan of nytimes.com, run for this screenshot. Nine tools, each labelled with the signal that found it: a cf-ray header, a powered-by header, page source, MX and TXT records. The strip above them is the DNS-derived address list.

How it's built

Next.js and TypeScript with hand-written CSS. The split that matters is I/O from logic: one module does every network call, and the matching and assembly modules do none, which is what lets the interesting parts be tested against recorded captures of real sites instead of the live internet. A guard rejects private, loopback and link-local addresses before any request goes out.