How rpavani1998/memoiary works
Memoiary is a personal journaling app backed by an autobiographical memory engine. The main workflow is capturing text or media, analyzing it with Gemini, saving and reconciling memory data, then finding or reflecting on those memories. The README also documents timeline, collections, people/places, events, intentions, graph, and storyboard capabilities. Some routes and UI components were not sampled, so uncertain wiring is omitted; documented features are shown without asserting unverified calls.
Main entry points: page.tsx Journal app · route.ts Capture analysis · store.ts Memory store · gemini.ts Gemini AI
Components 24
Journal experience
- Journal app
app/page.tsx - Timeline views
components/TimelineView.tsx - Storyboards and recaps
components/WeeklyRecapBoard.tsx - Collections and graph
components/UnifiedCollectionsGraphView.tsx - People, events, wishes
components/EntitiesViewSection.tsx - Reflection chat
components/ReflectionChatboard.tsx
Capture and analysis
- Text and voice capture
components/TextCaptureModal.tsx - Media recording
lib/hooks/useMediaCapture.ts - Capture endpoint
app/api/v1/capture/route.ts - Media analysis
app/api/v1/media/route.ts - Capture analysis
app/api/gemini/analyze/route.ts
Memory engine
- Dimension extraction
lib/memory-engine/extractor.ts - Graph reconciliation
lib/memory-engine/reconciliation.ts - Context retrieval
lib/memory-engine/retriever.ts - Person identities
lib/memory-engine/person-graph.ts - Memory store
lib/memory-engine/store.ts
Search and reflection
- Memory search
app/api/v1/search/route.ts - Memory chat
app/api/gemini/chat/route.ts - Journal insights
app/api/gemini/insights/route.ts - Storyboard synthesis
app/api/v1/storyboard/route.ts
External services
- Gemini AI
lib/gemini.ts - Cloud Firestore
- Firebase token verification
lib/firebase-admin.ts
Other components
- Journal user
Connections 33
- Journal user → Journal app: uses
- Journal app → Text and voice capture: starts capture
- Text and voice capture → Media recording: records media
- Text and voice capture → Capture endpoint: submits capture
- Media recording → Media analysis: sends media
- Capture endpoint → Firebase token verification: verifies token
- Capture endpoint → Cloud Firestore: writes and reads
- Capture analysis → Firebase token verification: verifies token
- Capture analysis → Gemini AI: generates analysis
- Capture analysis → Memory store: saves capture
- Capture analysis → Dimension extraction: extracts bundle
- Capture analysis → Graph reconciliation: reconciles bundle
- Graph reconciliation → Memory store: updates graph
- Memory store → Cloud Firestore: persists memory
- Memory search → Firebase token verification: verifies token
- Memory search → Memory store: reads captures
- Memory search → Gemini AI: ranks matches
- Memory chat → Firebase token verification: verifies token
- Memory chat → Context retrieval: retrieves context
- Context retrieval → Memory store: reads memory
- Memory chat → Gemini AI: generates response
- Journal insights → Gemini AI: synthesizes insights
- Storyboard synthesis → Person identities: resolves identities
- Storyboard synthesis → Gemini AI: synthesizes storyboard
- Journal app → Timeline views: presents memories
- Journal app → Storyboards and recaps: presents recaps
- Journal app → Collections and graph: explores memories
- Journal app → People, events, wishes: browses entities
- Journal app → Reflection chat: opens reflection
- Reflection chat → Memory chat: sends query
- Timeline views → Journal insights: requests insights
- Storyboards and recaps → Storyboard synthesis: requests synthesis
- Journal app → Memory search: searches memories