中文 · English
Write. Reflect. Listen to the voices within.
Ink & Memory is a journaling studio inspired by the inner monologues of Disco Elysium. As you write, a council of distinct personas chimes in—offering perspective, asking questions, or pointing out the absurdity of it all.
This isn't just another notes app. It's a daily writing companion that saves your work, organizes your thoughts, and helps you notice patterns in your own thinking. It speaks both English and Chinese, switching seamlessly as you write.
A clean writing space. No toolbar clutter. Just a calm surface for your thoughts, with automatic saving so nothing gets lost.
A council of inner voices. As you type, different personas highlight phrases and offer their takes—from the pattern-spotting Mirror to the darkly funny Absurdist. They appear as gentle watercolor highlights in the margins, never interrupting your flow.
Your timeline, visualized. Every session is saved to a calendar. Each day generates a unique image from your writing—a visual diary that grows with you.
Fully customizable. Don't like a voice? Edit it. Want new perspectives? Create your own deck. Share your creations with the community or discover what others have made.
The voices are organized into three decks. Enable the ones that resonate; disable the rest.
For processing emotions and understanding yourself
| Voice | What it does | |
|---|---|---|
| ❤️ | Holder | Offers gentle validation and support |
| 👁️ | Mirror | Reflects patterns you might not notice |
| 👊 | Starter | Breaks paralysis with tiny first steps |
| 🧭 | Weaver | Finds hidden threads connecting your thoughts |
| 🎭 | Absurdist | Lightens heaviness with dark humor |
For intellectual and academic perspectives
| Voice | What it does | |
|---|---|---|
| 🧭 | Linguist | Analyzes structure, semantics, meaning |
| 👁️ | Painter | Focuses on imagery, aesthetics, mood |
| 💡 | Physicist | Applies principles of energy and systems |
| 🧠 | Computer Scientist | Thinks in algorithms and complexity |
| ❤️ | Doctor | Offers health and psychological angles |
| 🧭 | Historian | Provides context and historical patterns |
For examining life through different lenses
| Voice | What it does | |
|---|---|---|
| 🛡️ | Stoic | Emphasizes what you can and can't control |
| 💨 | Taoist | Points toward effortless action and flow |
| 🤔 | Existentialist | Asks about choice, freedom, meaning |
| 👊 | Pragmatist | Focuses on what actually works |
Each voice is just a system prompt, an icon, and a color. Fork any deck to customize it. Create voices that channel your favorite thinker, focus on specific aspects of your life, or just make you laugh. Share them in the community store.
- Python 3.11+ with uv
- Node.js 18+
cd backend
uv venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
uv pip install -r requirements.txtCreate a models.json file for your LLM:
{
"models": {
"gemini-3-flash-preview": {
"endpoint": "https://openrouter.ai/api/v1",
"api_key": "your-key-here",
"model": "google/gemini-3-flash-preview"
}
},
"roles": {
"voice_analysis": "gemini-3-flash-preview",
"voice_chat": "gemini-3-flash-preview"
}
}See backend/models.json.example for the full set of roles and image settings.
Then start the server:
python server.py # Runs on http://localhost:8765You need to create the SQLite tables before first launch:
cd backend
python database.pycd frontend
npm install
npm run dev # Runs on http://localhost:5173The voice system uses a trace-based energy model:
- Energy builds as you write
- Threshold triggers analysis of recent text
- Voices scan for phrases that match their personality
- Comments appear as watercolor highlights in the margin
This creates an organic rhythm—voices chime in naturally rather than constantly interrupting.
Frontend: React 19 + TypeScript, Vite, TipTap editor with custom extensions
Backend: FastAPI + Python, PolyCLI for LLM orchestration, SQLite with WAL mode
AI: Multi-model support (GPT-4, Claude, DeepSeek, Gemini), structured outputs via Pydantic
Architecture: Deck-based voice system with parent-child relationships, community store for sharing
- More voices and community-created decks
- Richer visualizations of your writing patterns
- Mobile app for writing on the go
- Collaborative features
This is open source. We'd love your help.
- Found a bug? Open an issue
- Have an idea? Let's discuss it
- Want to code? PRs welcome
- Created a cool deck? Share it with the community
Your thoughts deserve to be heard—even by yourself.

