Case study · 04
MimoSE
Look back, make sense of me — an AI companion for self-reflection.
- Role
- Product · Design · Full-Stack
- Timeline
- Aug 2025 – Present
- Stack
- React · Spring Boot · OpenRouter
- Status
- Live Product

01 · Context & Users
People who want to understand themselves better through daily self-reflection — in English or Vietnamese.
02 · The Problem
“Logging emotions every day is hard — it is easy to give up without something bringing you back to it.”
03 · My Role
Independent build: I own the product end to end — direction, UX, the React frontend and the Spring Boot API.
- Product
- UX Design
- React Frontend
- Spring Boot Backend
- AI Prompt Design
04 · UX & Product Decisions
Inspired by Reflectly, MimoSE went through four phases: a garden-metaphor journal, energy tracking, a pivot to an AI companion with a relationship map — and most recently a single “Today” screen instead of four tabs. Along the way it was briefly called Aura Self AI, then came back to its first name, MimoSE — Make Sense Of ME — as a station of my Time Machine, with a Mimo of its own: not the one who drives the machine, but one who listens while you talk, then asks the next question.
Decision 01
Reminders first
Full journal on day one— build the habit before featuresDecision 02
Mimo, a companion
A coach persona— reflection, not instructionDecision 03
One “Today” screen
Four tabs + a chat button— what needs attention today, in one place
05 · Technical Solution
A React 19 single-page app and a Spring Boot 3.5 API on PostgreSQL. Mimo’s chat runs through OpenRouter; each conversation is summarised into insights you can keep in your Mirror (a Johari Window), a note, or a person on your relationship map.
Client
React 19 · Vite
API
Spring Boot 3.5
AI
OpenRouter
Tools
Mirror · People
06 · Measurable Results
The numbers
- 4
Product Phases
From journal to AI companion
- 350+
Commits
Frontend + backend, since Aug 2025
- 2
Languages
Full English / Vietnamese parity
Commits per quarter
Build activity across the frontend and backend repositories.
- 47Q3 ’25
- 143Q4 ’25
- 52Q1 ’26
- 1Q2 ’26
- 115Q3 ’26
07 · Lessons Learned
What I learned, and what I would do differently next time.
01
Habit before features
The reminder that brought people back mattered more than any feature added later. Retention starts with returning, not with options.
02
A stable data model makes pivots cheap
The latest redesign changed navigation, names and UX across the app without changing a single API endpoint.
03
Dead features still cost attention
Energy tracking and action protocols still live in the backend after the pivot. Next time I would remove them as soon as the new direction is confirmed.
Have a similar problem to solve?
I take on remote freelance work as a Product Engineer — from clarifying the user problem to shipping the product.
Let's talk →Next case study · 01
Harnix →
UX, SEO and messaging that sell AI to enterprise buyers.
