Step 1 — Campaign context
Every Claude Code session in this repo begins with a CLAUDE.md file that sets the operating brief. It defines the candidate, the race, the philosophy, the tone rules, and the non-negotiable constraints. Claude reads this before touching a single file.
Key constraints from that brief that shaped this page:
- No consultant voice. No marketing agency voice. Sound like a thoughtful local resident.
- Prefer simple, low-cost, GitHub Pages-compatible solutions.
- Prefer single-file HTML, CSS, and JS. Avoid unnecessary dependencies.
- AI use is a feature, not a liability. Show how it helped. Teach residents they can use it too.
- Always document tools, prompts, and outputs for post-election storytelling and awards.
Step 2 — Build prompt
The prompt given to Claude Code to build this page:
Build a Don-Bot Q&A page for the UNCAMPAIGN. It should:
— Use the campaign's existing site.css (no new frameworks)
— Display questions organized in collapsible category accordions
— Animate typed answers character by character with a realistic human feel
— Include occasional typo + backspace correction moments to feel authentic
— Show a typing indicator before each answer appears
— Keep a short recent-questions history as chip buttons
— Work on both mobile and desktop
— Be a single HTML file with embedded CSS and JS
— Follow all tone rules from CLAUDE.md (calm, neighborly, no consultant voice)
— Include full structured data for SEO (FAQPage schema)
— Be accessible: ARIA labels, keyboard navigation, reduced-motion support
The Q&A content should cover: who Don is, why he's running, the UNCAMPAIGN philosophy,
Bedford issues (roads, development, taxes, cell service), the Town Supervisor role,
party politics, and tough questions.
All answers must reflect Don's actual views. AI organizes and presents; it does not invent positions.
Step 3 — Q&A authoring
The 60+ questions and answers were written collaboratively. Don provided his positions, experience, and views. Claude drafted answer language consistent with his voice and the campaign's tone rules. Don reviewed and approved every answer before it was published. Nothing was invented by AI.
Step 4 — Upgrades
Subsequent sessions added: desktop sticky answer panel, guaranteed correction moments in every typed answer, this transparency section, reduced-motion support, and a CSS hero image placeholder pending final photography.
Each session began with the same CLAUDE.md context and a self-contained build prompt requiring inspection of existing files before making changes.
Why document this?
Because transparency is the point. This campaign uses AI openly. Showing the instructions is not a risk — it is the demonstration. Any resident, candidate, or civic organization could read this and build something similar. That is a feature, not a flaw.