Overview
Unfold is an AI journaling app that notices what keeps repeating across your own entries: a worry, a moment, something you keep circling back to, and shows it back to you, in your own words, once it's actually repeated. Not before that. No labels, no advice, nothing you can't check against the page.
The idea
I've journaled on and off for six months. The same worry would show up weeks apart, worded differently each time, and I wouldn't notice until much later, if at all. The entries were right there. Nothing tied them together.
Around the same time, I noticed how many people use ChatGPT for this instead: describe what's going on, get something back that feels like understanding. It works in the moment, but it trains you to outsource the noticing instead of doing it yourself. Unfold started as the opposite bet: memory, not interpretation.
Who it's actually for
People who already journal but rarely go back far enough to see what repeats. The value isn't writing more. It's seeing connections across everything already written.
What I ruled out before deciding what to build
- Emotion tags: a label is a conclusion, and it's not mine to hand someone.
- Responding to every entry: that turns this into a conversation partner, the exact dependency I was trying to avoid.
- Instant patterns: surfaced only after real repetition, never guessed from one entry.
- Advice: Unfold notices things. What to do about them is yours.
- AI deciding what a person should believe about themselves: it can point at something recurring, not turn it into a diagnosis.
- Patterns without evidence: if the writing doesn't clear the bar, nothing surfaces. Silence is a valid outcome.
One exception: if someone's writing shows real signs of crisis, Unfold doesn't try to reflect anything back. It points to real support instead. This is built to help someone think more clearly, not to replace a person when things are more serious than that.
Ruling these out first mattered more than anything I decided to build. Once I knew what I refused to do, what was left to build actually pointed somewhere.
The judgment boundary
The safest version of Unfold would never interpret anything: just find a repeat, show the words. That failed in two directions: too strict, and it missed the same worry worded differently across entries; too loose, and a single passing moment turned into a confident-sounding verdict about who someone was. What's left is the boundary: Unfold can say this keeps showing up. It can't say this is who you are.
Saying that was easy. Enforcing it wasn't. That's where the product decisions turned into engineering ones.
How it actually works
Unfold reads everything you write, but says nothing until something has genuinely repeated: not just mentioned, but the real point of more than one entry. When it has, Unfold shows the pattern back in your own words, next to the moments that led there, so you can check it against your own writing instead of taking it on faith.


How I get there
The sections above are the whole product. What follows is for anyone curious about the harder calls along the way. Skip it if you'd rather not.
The challenges, quickly
| Challenge | What I landed on |
|---|---|
| How much evidence is enough before something counts as a pattern | 3+ entries, confidence ≥ 0.75 each, primary reading in at least 2 |
| Where AI judgment should stop | It can name the repeating behavior. It can't say why, or what it means about you |
| Closed vocabulary vs. letting AI name things freely | Ten fixed behaviors: less complete-sounding, far more consistent to test |
| Crisis handling had no safe generic answer | Rewrote this more than any other copy: narrow and honest over broad and vague |
| Testing found a pattern erased, not just mislabeled | A correct 75% overlap merge quietly took an unrelated entry down with it |
A couple of these took a lot more back-and-forth than the table shows. Worth the extra detail:
How much evidence is enough?
I tried scoring emotional weight, letting the model rate its own certainty, even a drag-and-drop canvas to connect entries by hand. Every version still let one good-sounding read through. The table numbers above are what actually held, with no exceptions, even for a single very confident entry.
Where does AI judgment actually stop?
I first kept AI out of it almost entirely: just show the quotes, say nothing. It felt like homework, not help. So I swung the other way and let it explain what the pattern meant, which crossed exactly the line I didn't want to cross. The catch that mattered most wasn't a rule. It was noticing I was using AI more than I needed to, just because I could. That became the filter for every decision after.
Testing found a pattern erased, not just mislabeled.
15
test entries
5
intended patterns
4
surfaced
- Perfectionism overlapped 75% with self-doubt → correctly merged
- One perfectionism-only entry, 0% overlap → merged away anyway
The merge ran per category, not per entry. Found by not trusting a clean-looking result.
Privacy
Entries save locally first, on your device, as you type. They sync only once you're signed in. Never used to train anything, never shared.
Where it stands, and what's next
Unfold is live and being tested with early users. The next phase is less about adding features and more about seeing whether the core idea holds up in real use: do people recognize themselves in what surfaces, and does the evidence make each pattern feel earned? That's means:
- Fix entry-level overlap merging
- Validate whether patterns feel useful rather than intrusive
- Explore what other connections in a journal are worth surfacing
