<aside>
🔍
At a glance
- Role: Product thinker, content designer, and the person shipping the code
- Skills: Product naming, microcopy, interface content, UX research method, product thinking, vibecoding (React/Vite, serverless functions, deployed on Vercel)
- Product: Fieldnote, a UX content research tool that carries a research method end to end, built from scratch and deployed live
- Timeframe: A single sustained build, from first idea to a live URL with working AI
- Impact: A real, deployed tool that takes a study from research question to a client-ready PDF, and challenges the researcher's own conclusions along the way
- The hard part: Building for honesty, not just output, and staying honest when the tool itself broke
</aside>
The tool that structures your research should also challenge your conclusions.
Overview
Fieldnote is a UX content research tool I built and deployed for real freelance use. One study runs the whole way through: set a research question and tie it to a business goal, ingest AI meeting summaries, capture usability sessions with a fast coding system, cluster the notes into evidence-backed themes, and then pressure-test those themes with a bias-check that questions the researcher rather than flattering them. It ends by exporting a client-ready findings PDF.
It's built on the discipline of a formal UX research method, but the reason it belongs in a content design portfolio is the idea underneath it: that a research tool should be honest. Every claim in Fieldnote traces back to a specific piece of evidence, and that evidence is ranked by how close it sits to the user's own words. The tool proposes; the researcher decides. This case study tells the story of building that, including a run of bugs I hit and how being honest about them shaped the final product.
<aside>
📌
Vibecoded, then shipped for real. I built this conversationally, feature by feature, then deployed it as a live app on Vercel with a serverless function powering its AI features. Everything below (the coding system, the synthesis, the bias-check, the PDF export, the deployment) is the actual build, not a mockup.
</aside>
The challenge
As a freelance content designer I often run usability research alone, with no second researcher to check my thinking. That's where bias creeps in: it's easy to notice the evidence that confirms what you already suspected and quietly skip past the evidence that doesn't. I wanted a tool that would carry the rigor of a proper research method into solo work, and specifically one that would catch me doing that.
Two principles ran underneath the whole build:
- Every claim had to keep its receipts. A finding isn't a floating assertion; it's a headline plus the exact notes that produced it, each one showing whether it came from a live session or a secondhand summary. If a theme rests on thin or weak evidence, the tool says so out loud.
- The AI proposes, the human decides. The tool uses AI to sort, cluster, and challenge, but nothing is ever committed to a study without my explicit approval. That approval gate isn't a limitation I worked around; it's the point. It's the same principle I bring to writing: a machine can draft, but a person has to own the words.
How it works, and why each stage is there
Fieldnote reflects a bias toward provenance and restraint. Every stage had to earn its place in a real research project:
- Goals & baseline. A study starts by naming the research question and the business goal it ladders up to. A test that isn't anchored to a goal can't be checked for bias later, so this comes first. Where there's no prior baseline (common on a first version), the tool says plainly that the findings are directional, not comparative, and that this study becomes the baseline for next time.
- Ingest. Paste an AI-generated meeting summary and it's classified as either a stakeholder kickoff or a user session, then parsed into structured items I review before anything is saved. Notes pulled from a summary are marked as summary-sourced: one remove from the user's actual words, and weighted lower because of it.
- Session capture. A fast, keyboard-first screen for live sessions. Each note is tagged in one keystroke as an Observation, a Quote, or a Suggestion. Notes typed live are marked primary: the strongest evidence, closest to what the user actually said.
- Synthesis. One pass clusters all the notes into a handful of themes, each carrying the exact notes behind it plus a provisional severity and fix. Themes resting on a single note, or built only from summary-sourced evidence, are flagged honestly rather than dressed up.
- Bias-check. The heart of the tool. It re-reads the themes I've confirmed against the goal I set and challenges them: confirmation bias, thin evidence, a gap between what users said and what they did, over-reliance on secondhand notes. Every flag is a question with evidence attached, never a verdict. I accept the fair ones and dismiss the unfair ones. It never edits my work; it makes me defend it.