Public engineering sample
Site Factory
A TypeScript pipeline that turns discovery data and website evidence into reviewable drafts and configurable Astro output.
The engineering problem
- Problem
- Connect discovery data, website audits and generated copy without losing the distinction between observed facts and proposed content.
- What I built
- A workflow spanning typed discovery records, audits, AI-assisted copy, reviewable drafts, site configuration and website generation. I built it around a web-design workflow for local manufacturers, machine shops and contractors.
- Stack
- TypeScript, Astro, Google Places data, Lighthouse auditing and AI-assisted copy. The public edition replaces private inputs with fictional businesses and an offline demo.
- Design decision
- Keep evidence, scoring and generated copy in separate stages, and preserve unavailable results explicitly. Synthetic fixtures make the public demonstration reproducible without credentials.
The public edition does not send outreach or deploy websites.
An inspectable demonstration

Desktop and mobile screenshots, a responsive demo GIF and reproducible local commands are included. Read how the screenshots were produced.
Engineering decisions
Separate evidence from decisions
Discovery responses become typed lead records. Browser evidence feeds audit checks, scoring and reviewable drafts, so observations remain distinct from generated copy.
Make unknowns explicit
Checks can return unavailable. Copy records distinguish evidence-bearing facts from unconfirmed information instead of turning missing data into claims.
Keep the demo offline
Synthetic fixtures exercise the same checks and scoring without API keys. Audit evidence is simulated; the screenshots document the separately rendered example site.
Validate the output
Typed site configurations and design briefs feed Astro pages. Automated checks, browser tests and security/privacy scans validate the public edition; local form behavior is labeled as a simulation.