A closed Q&A pilot built for AI analysis, live by Tuesday
Pilot live by Tuesday. Anonymous collection with silent attribution working end-to-end.
TL;DR
Tincture helped a UK founder launch a closed Q&A pilot for their personal project — building anonymous response collection with silent participant attribution, structured for direct AI analysis per participant. The build ran on Vercel with a Supabase back-end, used unique URLs to carry participant identity without respondents ever identifying themselves, and delivered clean, typed response data ready to pass straight to an AI model. Pilot live by Tuesday, exactly as scoped.
The brief
What did the client need?
A founder wanted to run a small, closed pilot for a personal side project: a calm, meditative questionnaire that surfaces life-area pain points across several categories, shared with a limited group before any commercial investment. The vision was AI-driven: each participant's responses would be fed into an AI system to produce a personalised report — part therapist read, part life coach, part honest mirror. The pilot's job was to test whether the core mechanic worked with real people before investing in the AI analysis layer.
The complication was anonymity: respondents needed to feel like they were completing something private, without identifying themselves, but the founder still needed each set of responses attributed to a named participant so the AI reports could be produced per person afterwards.
No accounts, no email capture from respondents, no follow-up flow. Clean, structured response data landed somewhere accessible, in a format ready to pass straight to an AI model. Quick and minimal. The pilot needed to be live within roughly half a day of focused work.
The constraints
What made this hard?
Three things shaped the build. The first was speed. "Half a day of focused work, live by Tuesday" is an ambitious brief for a web app with a Supabase back-end and a bespoke attribution mechanism. It meant no scope creep, nothing exploratory, every decision made fast.
The second was the anonymity/attribution paradox at the centre of the project. Respondents shouldn't have to identify themselves — that changes how honestly people answer. But the founder needed the data attributed to named individuals so the reports were useful. Any mechanism that asked respondents to enter their name defeats the purpose; any mechanism that left the data unattributed defeats the usefulness. The solution had to live somewhere the respondent never sees.
The third was tone. The founder's main commercial brand is fast, bright, construction-adjacent. This project needed to feel like the opposite: quiet, considered, nothing urgent. That distinction had to be built in from the start, not applied as a visual layer afterwards.
The approach
How did Tincture frame the problem?
I built the questionnaire app on Vercel with a Supabase back-end. The attribution mechanism lives entirely on the admin side: the founder enters a participant name, and the system generates a unique URL. When that URL is shared and a response is submitted via it, the response lands in Supabase tagged to the participant name — without the respondent ever seeing the name, entering anything identifying, or knowing their link is unique. The URL carries the attribution; the respondent doesn't.
Every structural decision in the build was made with AI processing in mind. Responses land in Supabase in a clean, typed structure — no free-text noise, no inconsistent formatting, nothing that requires cleaning before an AI model can read it. The founder can pull a participant's full response set and pass it straight to a model with a persona prompt (therapist, career coach, life auditor) and get a coherent report back. The app doesn't do the analysis; it makes the analysis possible without any preparation work between capture and AI input.
The build
What was shipped?
The questionnaire content was supplied by the founder; I built the capture layer, the unique-link generator, the admin interface, and ran a QA pass before go-live. The design direction was deliberately calm — muted palette, generous whitespace, slow pacing, nothing that signalled urgency or demanded attention.
The pilot workflow: the founder shares unique links with an initial group of around six contacts, who can forward their link onwards to their own people. Each submission arrives in the store tagged to the participant the founder originally named, regardless of how many hops the link has travelled.
The outcome
What were the results?
Pilot live by Tuesday, as agreed. Unique-link generation working end-to-end: the founder creates a participant record in the admin interface and gets a clean, shareable URL back in seconds. Responses landing tagged in Supabase, structured and ready for manual AI processing per participant. No email capture from respondents, no accounts, no follow-up flow, privacy completely preserved -exactly as scoped.
The pilot is now running. The core mechanic- anonymous response collection with silent participant attribution - is working as designed.
The takeaway
What's the transferable principle?
If you're building for AI analysis downstream, the data capture layer is the design problem worth solving first. The AI report is only as good as the structure of what it reads, and "we'll clean it up before we run it through the model" is a tax you'll pay on every single participant. Building the structure in from the start — typed fields, clean schema, no free-text noise — means the AI step is copy, paste, prompt. The anonymity mechanism matters too, and the URL-level solution handles it cleanly: the respondent feels anonymous because they are anonymous, and the researcher gets attributable data because the URL already carried the name.
More like this

12 production stages, 11 Supabase tables - replacing WhatsApp and spreadsheets for a bespoke jewellery operation.
Custom AI Operations and CRM Platform
A multi-level access portal platform for an early-stage US/UK jewellery business, a bespoke operation spanning the UK and US, replacing fragmented WhatsApp and email workflows with a structured RFQ-to-delivery system. The platform includes an AI diamond scoring engine, repeat-customer preference learning, AI-assisted CAD and image generation, finance forecasting, and market pricing intelligence, alongside an eleven-table Supabase data model, a 12-stage production pipeline, and integrated Stripe, Sendgrid, Twilio, and blockchain diamond provenance tracking.

9,182 verified contacts from 30,001 ARB records, structured for direct CRM import.
An AI-assisted campaign-ready contact list for the entire UK architect market
Tincture processed the full UK Architects Registration Board register - 30,001 records — through five enrichment layers (Companies House, website discovery, email generation and selection, SMTP verification, and AI organisation classification) to produce a structured delivery pack with a 9,182-contact verified core send file ready for CRM import. The AI classification layer distinguished core architecture practices from in-house employers at scale, protecting the send list from bounce-rate risk.
Featured12 agents, ~10 issues/day, ~2 hours saved daily, cost = Claude subscription + ~$40/month VM
A 12 agent ↔ Linear ↔ Notion setup
The Operating layer was wired to Linear and Notion, paired via MCP, so each specialist agent could ship from Linear and mirror state into Notion against its per-persona write contract, with identity that survives across sessions. Stand-up took about 2.5 working days of focused build, over a week of elapsed time. Steady state: 12 agents working roughly 10 issues or tasks a day, about 2 hours of time saved daily plus the context-rebuilding tax that doesn't show up on a clock. The whole thing runs on a Hetzner VM in Helsinki, so agents pick up Linear comments and project emails whether the laptop is open or not. Cost is the Claude subscription plus about $40 a month for the VM.


