The Reflective Half
In an era where our digital interactions are fragmented across countless platforms and devices, Reflect brings everything together into one seamless, intelligent flow.
Core trick
Funnels text, voice and image inputs into one Supabase store, and a background agent periodically prompts users to revisit past entries.
Description
In an era where our digital interactions are fragmented across countless platforms and devices, Reflect brings everything together into one seamless, intelligent flow. It’s a unified messaging layer that accepts multimodal inputs — text, voice, images, and beyond — and curates them through an autonomous background agent designed to simplify capture while deepening reflection.
The system’s core philosophy is balance: frictionless input, deliberate reflection. Users can capture thoughts, notes, and interactions effortlessly, while the agent periodically introduces meaningful moments of friction — prompts to revisit, reframe, and learn from past inputs. Over time, this adaptive rhythm transforms scattered digital traces into structured self-growth, cultivating habits and supporting long-term memory.
Despite half of the team had to shoot halfway here it is....
At its heart, Reflect isn’t just a productivity tool; it’s a personal growth companion. It helps users not merely organize their world, but internalize insights from it — building a seamless bridge between ambient data collection and intentional personal evolution.
README excerpt
# Personal Growth Agent Minimal initial shell for a personal growth assistant using: - Next.js App Router - Vercel AI SDK + Chat UI SDK - Google Gemini multi-model support via `@ai-sdk/google` - Supabase for POLE data model and raw context capture ## Setup 1. Copy environment variables: ```bash cp .env.example .env.local ``` 2. Add required keys in `.env.local`: ```bash GOOGLE_GENERATIVE_AI_API_KEY=... NEXT_PUBLIC_SUPABASE_URL=... NEXT_PUBLIC_SUPABASE_ANON_KEY=... SUPABASE_SERVICE_ROLE_KEY=... SUPABASE_DEFAULT_TENANT_ID=... ``` 3. Apply the Supabase migration: ```bash supabase db push ``` 4. Install dependencies and start the app: ```bash npm install npm install -g portless # one-time: enables HTTPS + HTTP/2 and trusts a local dev CA npm run proxy npm run dev ``` 5. Open [https://personal-growth.localhost](https://personal-growth.localhost). If you need to bypass Portless, run: ```bash PORTLESS=0 npm run dev:raw ``` Then open [http://localhost:3000](http://localhost:3000). ## Current Scope - Basic chat interface scaffold - Streaming responses through `/api/chat` - Gemini model wired with Vercel AI SDK - Raw chat interaction logging to `ingest.raw_sessions` and `ingest.raw_messages` in Supabase This is the baseline scaffold for future features such as memory, goals, plans, and progress tracking.