Inspiration
Research in psychology and neuroscience has repeatedly demonstrated the power of journaling and goal visualization. Dr. James Pennebaker’s work at UT Austin showed that expressive writing improves emotional regulation and even physical health. Dr. Gail Matthews’ goal-setting study revealed that people are 42 percent more likely to achieve their goals when they write them down and track them. I’ve also spoken publicly on mental health through my TED Talk, which gave me firsthand exposure to how people struggle to reflect, process emotions, and stay accountable to their long-term goals. InWord was built to merge all of that science into a single, elegant experience powered by secure AI.
What it does
InWord is a mobile/web app that combines daily journaling, AI-powered emotional insights, and a structured vision board for long-term goals. After users write a journal entry and rate their day, the app generates a personalized reflection and follow-up question to promote deeper introspection. Users can then continue the conversation through AI chat, which maintains emotional context over time. The Vision Board tab lets users create goals with importance ratings and timeframes, and the AI will eventually track progress through the content of their journals. All sensitive data is encrypted so only the user can access it, not the backend or the developers.
How we built it
The frontend (build in React and with the Expo Framework) was built with a focus on cosmic UI elements and smooth user flow between the Journal, Insights, and Vision Board tabs. Supabase was used for authentication and baseline storage, and the Gemini API powers all AI interactions. I implemented local device encryption for journal data and AI memory, ensuring that no unencrypted information is visible in the backend. The journaling flow connects directly to prompt templates that generate both reflections and ongoing chat with conversational continuity. Goal metadata is synced with the journaling pipeline to eventually support progress tracking and user-specific insights.
Challenges we ran into
One of the biggest challenges was figuring out how to encrypt user data in a way that prevents backend visibility but still allows the frontend to display and use it. I had never worked with storing encrypted data directly on-device before—every previous app I built relied on Firebase or Supabase as the primary source of truth. Understanding how to generate, manage, and apply client-side keys while syncing only encrypted content to the cloud took hours of trial, testing, and iteration. Integrating this with AI prompts without breaking formatting or JSON structure added another layer of complexity.
What's next for InWord
The next phase of InWord focuses on strengthening personalization, continuity, and launch readiness. We’ll add journaling streaks and mood-tracking visualizations so users can see emotional patterns over time and connect consistency with progress. To preserve privacy without risking data loss, we’ll implement a secure backup and recovery system for encryption keys, likely through password-encrypted cloud storage or exportable key files. A smarter onboarding flow will help personalize the AI from day one by asking a few quick questions about communication style, priorities, and goals. The vision board will be expanded with progress timelines, image-based goal elements, and “why this matters” fields that deepen user connection to long-term aspirations. Finally, we’ll begin formal App Store preparation by designing onboarding screens, writing metadata and descriptions, setting up TestFlight or closed-track builds, and running small user tests to refine UX before beta launch.
Built With
- expo.io
- gemini-api
- react-native
- supabse
- typescript

Log in or sign up for Devpost to join the conversation.