0bdd71a4eddb7c4345dabb776d298950ced19bcc
- Automatic browser geolocation capture on event creation - Reverse geocoding via Nominatim API for place names - Full-text search with SQLite FTS5 - Calendar view for browsing past entries - DateNavigator component for day navigation - SearchModal with Ctrl+K shortcut - QuickAddWidget with Ctrl+J shortcut - Starlight documentation site with GitHub Pages deployment - Multiple AI provider support (Groq, OpenAI, Anthropic, Ollama, LM Studio) - Multi-user registration support BREAKING: Events now include latitude/longitude/placeName fields
DearDiary
Self-hosted AI-powered daily journaling application. Capture events throughout the day and let AI generate thoughtful diary pages from your entries.
Features
- Quick event capture with keyboard shortcut (Ctrl+J)
- Multiple event types: text, health, photo, voice
- Automatic geolocation - events tagged with your location
- AI-powered diary page generation with customizable providers
- Events become immutable once a diary is generated (prevents editing past memories)
- Regenerate diary pages with additional instructions
- Generation tasks with title tracking per task
- Read all diaries with pagination (10/50/100 per page)
- Dashboard with diary excerpts
- Calendar view for browsing past entries
- Full-text search across events and diaries
- Export/Import data with version checking
- Dark/light theme support
- Self-hostable with Docker
Quick Start
# Clone the repository
git clone https://github.com/anomalyco/totalrecall.git
cd totalrecall
# Start with Docker
docker compose up -d
Access the app at http://localhost:8080
Default credentials: admin@localhost / changeme123
Documentation
Full documentation is available at https://anomalyco.github.io/totalrecall
Topics covered:
Configuration
- Go to Settings and select your AI provider (Groq, OpenAI, Anthropic, Ollama, LM Studio)
- Enter your API key for the selected provider
- Optionally customize the model and base URL
- Test the connection before saving
Development
Prerequisites
- Bun
- Node.js 20+
- Docker
Backend
cd backend
bun install
bunx prisma generate
bun run dev
Frontend
cd frontend
npm install
npm run dev
Build Docs Locally
cd docs
npm install
npm run dev
Docker Build
docker compose build && docker compose up -d
Project Structure
├── backend/ # Hono + Prisma backend
│ ├── prisma/ # Database schema
│ └── src/ # API routes and AI services
├── frontend/ # React + Vite frontend
│ └── src/
│ ├── pages/ # Page components
│ ├── components/
│ └── lib/ # API client, geolocation
├── docs/ # Starlight documentation site
└── docker-compose.yml
Routes
/- Dashboard with recent diary pages and excerpts/today- Today's event stream (main capture page)/diary- Paginated diary reader (10/50/100 per page)/journal/:date- View/edit diary page with generation tasks/day/:date- View day's events/calendar- Calendar view/settings- Configuration and Export/Import
License
MIT License
Copyright 2026 Konrad Lother
Description
Self-hosted AI-powered daily journaling application. Capture events throughout the day and let AI generate thoughtful diary pages from your entries.
https://deardiary.lother.io
Languages
TypeScript
66.4%
Kotlin
14.9%
HTML
12%
CSS
3.1%
JavaScript
2.5%
Other
1.1%