-
-
01-landing-page-english-hero
-
02-landing-page-how-it-works
-
03-demo-page-reflection-input
-
04-create-account-page
-
05-overview-page
-
06-today-page-daily-record-form
-
07-entry-detail-ai-feedback
-
08-history-page-entry-list
-
09-trends-page-7-day-charts
-
10-long-term-summary-overview
-
11-long-term-insight-draft
-
12-plans-ai-suggestion-draft
-
13-plans-saved-plan-dashboard
-
14-product-boundary-page
-
15-safety-resources-page
Inspiration
MindTrace was built from the idea that people should not only pay attention to their physical health, but also their mental and emotional state. Many people experience changes in mood, stress, energy, sleep, and daily life patterns, but they may not have a clear way to review what has been happening over time.
I wanted to build a private journaling tool that helps users record small daily signals and gradually understand themselves through long-term reflection.
What it does
MindTrace is a private mood and state journal for adults. Users can record mood, stress, energy, sleep, life events, and optional journal notes. Over time, these records become history, trends, and long-term summaries.
Gemini is used to generate supportive feedback, long-term self-reflection insight drafts, and plan suggestion drafts. The AI helps users notice possible patterns and think about gentle next steps.
AI suggestions are not applied automatically. The user reviews the draft and decides whether to save or act on it.
How we built it
MindTrace is built with Next.js, React, TypeScript, Firebase Authentication, Firestore, Vercel, and Gemini.
The app includes authentication, onboarding, English and Chinese language support, daily journaling, history, trends, long-term summaries, AI feedback, AI insight drafts, and AI plan suggestions.
The AI flow uses schema validation, safety validation, and fallback behavior. If Gemini is unavailable, rate-limited, or produces output that does not pass validation, MindTrace does not show raw provider output and instead displays a safe fallback message.
Challenges we ran into
One major challenge was making AI useful while keeping the product safe. MindTrace is not a medical product, so the AI cannot diagnose, treat, provide medication guidance, or replace professional care.
I also had to solve issues around Firebase setup, Vercel deployment, Gemini provider configuration, schema validation, safety validation, AI output language, English localization, mobile layout, and provider rate limits.
Another challenge was making sure AI suggestions stayed as drafts until the user confirmed them.
Accomplishments that we're proud of
The current MVP is deployed and supports a complete demo flow. Users can open the English default experience, complete onboarding, record a daily state, review history and trends, view long-term summaries, generate Gemini AI feedback, generate long-term insight drafts, generate plan suggestion drafts, and save a user-confirmed plan.
I am also proud that the product includes clear safety boundaries. Gemini supports reflection, but the user stays in control.
What we learned
I learned how to combine a normal product workflow with AI assistance while keeping users in control. I also learned that AI features need clear boundaries, validation, fallback handling, and simple explanations.
As a solo builder, I used AI tools such as ChatGPT and Codex to help plan features, understand errors, debug code, improve localization, and manage the GitHub and Vercel workflow. AI assisted the development process, but I made the final product and safety decisions.
What's next for MindTrace
Next, I want to improve the mobile UI, refine the visual design, add better icons and content styling, make AI suggestions more stable, improve privacy controls, support user data export, and collect real user feedback.
The long-term goal is to make MindTrace a safe, low-risk reflection tool that helps people understand themselves through consistent records and thoughtful AI-assisted summaries.
Built With
- css
- firebase-authentication
- firestore
- gemini-api
- github
- google-gemini
- i18n
- next.js
- playwright
- react
- typescript
- vercel
- vitest