Project Info
Inspiration
In a world of distractions, it’s hard to stay focused on your dreams. Most productivity tools only add to the chaos with more dashboards, inboxes, and alerts. We believe the best thing to hold you accountable - is you. So we built Reflections to be different. It uses your own signals - your calendar, your email, your story - to create a blueprint for a more productive you, synthesizing them into meaningful insights every day, and coaching you toward better habits, clearer priorities, and deeper focus long term. No more noise. Just real reflection and real change.
What it does
Your Reflection Understands Your Focus in Real-Time. Reflections securely connects to your work signals. By passively understanding your screen activity and analyzing communication patterns from your Gmail, Google Calendar, Notion, it builds a private, real-time picture of what you're working on, where your time is going, and when you are truly focused. But Reflection goes beyond data. It begins with a guided conversation to understand the intangibles that make you who you are: your story, your dreams, your personality, and what truly drives you. This forms the core of its coaching intelligence. Your Reflection Understands Your Focus in Real-Time. Reflections securely connects to your work signals. By passively understanding your screen activity and analyzing communication patterns from your Gmail, Google Calendar, Notion, it builds a private, real-time picture of what you're working on, where your time is going, and when you are truly focused. But Reflection goes beyond data. It begins with a guided conversation to understand the intangibles that make you who you are: your story, your dreams, your personality, and what truly drives you. This forms the core of its coaching intelligence. Your Reflection Calls You When You’re Unproductive When it senses you've slipped into distraction, it doesn't send a notification you can ignore. A simple, FaceTime-style window appears with your AI twin - a 3D model, modeled after you. Using your own voice, it offers a gentle but firm nudge to get back on track. It’s the voice of your own intentions, helping you stay true to your goals. Your Reflection Calls You When You’re Unproductive When it senses you've slipped into distraction, it doesn't send a notification you can ignore. A simple, FaceTime-style window appears with your AI twin - a 3D model, modeled after you. Using your own voice, it offers a gentle but firm nudge to get back on track. It’s the voice of your own intentions, helping you stay true to your goals. Your Reflection Acts as Your Personal AI Coach. Your coach is always available. You can start a voice or text conversation anytime to talk through challenges, set priorities, or set short or long-term goals. The Reflection remembers every session, getting smarter about your goals and work style over time. Your Reflection Acts as Your Personal AI Coach. Your coach is always available. You can start a voice or text conversation anytime to talk through challenges, set priorities, or set short or long-term goals. The Reflection remembers every session, getting smarter about your goals and work style over time.
How we built it
We built Reflections as a cross‑platform Electron app (Vite + React/TypeScript) with Tailwind and shadcn/ui for a clean, responsive UI and Framer Motion for subtle interactions. Voice and text coaching run through ElevenLabs over WebRTC, and a FaceTime‑style, always‑on‑top popup uses your camera to “call” you when focus slips. The 3D model of the user's face was rendered using Blender and Unreal Engine. In the main process, we sample the screen at user‑set intervals, run Claude function‑calling to classify on‑task vs. distraction and task type, and persist per‑interval stats to Supabase, which power the session/lifetime radar. For signals, we securely link Gmail via Composio, fetch a recent slice of mail, and analyze it with Claude to infer communication patterns, role, and personality - while deep research runs on the Exa API and is summarized and saved. A Claude synthesis step then fuses conversations, email insights, and research into a living system prompt that personalizes coaching over time, with Google sign‑in and a hardened preload bridge keeping secrets isolated and IPC streams reliable. Sponsors: Composio, Claude, Gemini, Eleven Labs, Postman, Bright Data
Challenges we ran into
3D Modeling - Our vision for Reflections required a deeply personal, visual identity, leading us down the complex path of creating a high-fidelity 3D avatar using Blender and Unreal Engine. The primary challenge was bridging the world of 3D animation with the performance constraints of a real-time Electron app, and the real-time audio streaming. We wrestled with asset optimization and facial animation to ensure the avatar could be integrated seamlessly into the user experience - from the live call popups to the UI - without compromising system performance or app responsiveness. Reflections isn’t just an app; it’s a live system orchestrating multiple, high-latency processes at once. The moment a user drifts, the app has to instantly classify screen content, generate and stream natural-sounding voice, and trigger the interactive call experience. Achieving a smooth, low-latency interaction that felt natural was a massive hurdle. Initial versions suffered from noticeable lag, forcing us to re-architect our entire event-driven system to prioritize the real-time audio and visual cues without crippling the user's machine with background processing and extreme delays. One of the biggest challenges was fusing all the disparate signals that we record into a single, coherent "living system prompt" for your Reflection. Engineering this synthesis step to create a system that genuinely personalizes its coaching over time, rather than just acting on isolated data points, was a major data architecture and AI-prompt-engineering problem.
Accomplishments we're proud of
Accomplishments that we're proud of The "Living System Prompt": A Coach That Genuinely Learns We are incredibly proud of the unified system prompt that serves as the "brain" for the coach. Instead of relying on isolated data points, our system successfully fuses every signal - conversations, email activity, screen activity - into a single, evolving model of the user. This means Reflections isn't just reacting; it's learning. The coaching becomes more insightful, personalized, and effective over time, fulfilling our core promise of a tool that truly grows with you. The "Living System Prompt": A Coach That Genuinely Learns We are incredibly proud of the unified system prompt that serves as the "brain" for the coach. Instead of relying on isolated data points, our system successfully fuses every signal - conversations, email activity, screen activity - into a single, evolving model of the user. This means Reflections isn't just reacting; it's learning. The coaching becomes more insightful, personalized, and effective over time, fulfilling our core promise of a tool that truly grows with you. 3D Assets and Facial Animation We successfully bridged the gap between high-fidelity 3D assets created in Blender and Unreal Engine and a lightweight, performant Electron app. By creating an optimized pipeline for these visuals, we gave Reflections a unique, polished aesthetic that goes far beyond typical productivity tools. Additionally, we’re incredibly proud of the facial animations we were able to produce. This amalgamation of models and facial animations is central to the user experience, making the coach feel more tangible and the interactions more personal and engaging. 3D Assets and Facial Animation We successfully bridged the gap between high-fidelity 3D assets created in Blender and Unreal Engine and a lightweight, performant Electron app. By creating an optimized pipeline for these visuals, we gave Reflections a unique, polished aesthetic that goes far beyond typical productivity tools. Additionally, we’re incredibly proud of the facial animations we were able to produce. This amalgamation of models and facial animations is central to the user experience, making the coach feel more tangible and the interactions more personal and engaging. A Seamless, Real-Time Coaching Experience Our biggest technical achievement is the highly optimized, event-driven pipeline that delivers the core coaching experience. We managed to orchestrate multiple complex, high-latency processes—real-time screen analysis, ElevenLabs voice synthesis, and the interactive call UI - with minimal lag. When your Reflection calls, the interaction feels genuinely responsive and human, not like a series of disjointed API calls. This seamlessness is what makes the coaching feel natural and effective, rather than robotic. A Seamless, Real-Time Coaching Experience Our biggest technical achievement is the highly optimized, event-driven pipeline that delivers the core coaching experience. We managed to orchestrate multiple complex, high-latency processes—real-time screen analysis, ElevenLabs voice synthesis, and the interactive call UI - with minimal lag. When your Reflection calls, the interaction feels genuinely responsive and human, not like a series of disjointed API calls. This seamlessness is what makes the coaching feel natural and effective, rather than robotic.
What we learned
We learned an immense amount about the challenge of integrating disparate, cutting-edge technologies into a single, cohesive experience. On the AI side, we discovered that building a system that truly learns requires a deep focus on data synthesis — fusing structured, unstructured, and conversational data into a single "living prompt." On the visual side, we tackled the steep learning curve of 3D modeling and animation, which gave us a profound respect for the immense technical and artistic challenges that video game developers overcome every day.
What's next
We want to continue to expand Reflections by adding more and more features that makes it a truly transformational tool for people looking to achieve their dreams. We’re looking to add features analyzing your productivity by time of day and day of the week, its coaching will become radically personalized to your unique rhythm. Eventually, the goal is for Reflections to be so attuned to your patterns that it can help you architect your ideal work-life balance, ensuring that your drive toward success is both powerful and sustainable.
Your reflection bringing about change.
Reflection is a Desktop Application featuring an AI twin that has all the context on you and allows you to stay true to your goals and self.
Reflections securely connects to your work signals. By passively understanding your screen activity and analyzing communication patterns from your Gmail, Google Calendar, Notion, it builds a private, real-time picture of what you're working on, where your time is going, and when you are truly focused. But Reflection goes beyond data. It begins with a guided conversation to understand the intangibles that make you who you are: your story, your dreams, your personality, and what truly drives you. This forms the core of its coaching intelligence.
When it senses you've slipped into distraction, it doesn't send a notification you can ignore. A simple, FaceTime-style window appears with your AI twin - a 3D model, modeled after you. Using your own voice, it offers a gentle but firm nudge to get back on track. It’s the voice of your own intentions, helping you stay true to your goals.
Your coach is always available. You can start a voice or text conversation anytime to talk through challenges, set priorities, or set short or long-term goals. The Reflection remembers every session, getting smarter about your goals and work style over time.
We built Reflections as a cross‑platform Electron app (Vite + React/TypeScript) with Tailwind and shadcn/ui for a clean, responsive UI and Framer Motion for subtle interactions. Voice and text coaching run through ElevenLabs over WebRTC, and a FaceTime‑style, always‑on‑top popup uses your camera to “call” you when focus slips. The 3D model of the user's face was rendered using Blender and Unreal Engine. In the main process, we sample the screen at user‑set intervals, run Claude function‑calling to classify on‑task vs. distraction and task type, and persist per‑interval stats to Supabase, which power the session/lifetime radar. For signals, we securely link Gmail via Composio, fetch a recent slice of mail, and analyze it with Claude to infer communication patterns, role, and personality - while deep research runs on the Exa API and is summarized and saved. A Claude synthesis step then fuses conversations, email insights, and research into a living system prompt that personalizes coaching over time, with Google sign‑in and a hardened preload bridge keeping secrets isolated and IPC streams reliable.
Analysis
View
Metric
- 35
- 28
- 9
- 8
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- CSSIn code
- HTMLIn code
- JavaScriptIn code
- OpenAIIn code
- PythonIn code
- ReactIn code
- SQLIn code
- SupabaseIn code
- Tailwind CSSIn code
- TypeScriptIn code
- Google GeminiClaimed
10 of 11 appear in the indexed code. 1 claimed on Devpost could not be matched to code, which may simply mean the tool leaves no trace in the repository.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
325 KB
Source files
58
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
coach-calhacks/reflections
84 files · 8.7 MB · @ cd1550c
Structure
Interface
24 files · 29%Screens, components and styles rendered to the user.
Application logic
22 files · 26%Domain rules, services and shared utilities.
Data & schema
1 file · 1%Schema definitions, migrations and data access.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- TypeScript83%
- Markdown11%
- HTML2%
- JavaScript1%
- Python1%
- SQL1%
- Other (2)1%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
coach-electron/package.json
npm · 59- @composio/core
- @electron-toolkit/preload
- @electron-toolkit/utils
- @elevenlabs/react
- @google/genai
- @radix-ui/react-avatar
- @radix-ui/react-checkbox
- @radix-ui/react-progress
- @radix-ui/react-scroll-area
- @radix-ui/react-slot
- @radix-ui/react-tooltip
- @react-three/drei
- @react-three/fiber
- @supabase/supabase-js
- class-variance-authority
- clsx
- dotenv
- framer-motion
- +41 more
Declared in the repository’s manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
This project’s features have not been analysed yet.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.