DEV Community

Cover image for Echoes AI: A Private, Local-First Memory Journal & Story Sanctuary
Mayur P
Mayur P

Posted on

Echoes AI: A Private, Local-First Memory Journal & Story Sanctuary

This is a submission for the Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine


What I Built

Every family has stories that slowly drift toward the edge of being forgotten: the quiet joke shared on a front porch during a summer storm, the secret twist to a holiday recipe, or the reassuring words of a grandparent whose voice was never recorded.

For the Week 4 “Ghost in the Machine” challenge, I built Echoes AI — an open-source, private, local-first digital memory journal and story preserver.

Tagline: “Every memory deserves to live on.”

Instead of interpreting "Ghost in the Machine" through dark sci-fi or eerie necromancy (trying to create "AI avatars" that impersonate the deceased), Echoes AI approaches the theme with deep reverence and warmth. The "ghosts" in our machines shouldn't be synthetic copies pretending to speak for lost loved ones; they should be the living, cherished echoes of human memories, traditions, and life stories, preserved faithfully under the storyteller's absolute ownership.

Core Capabilities:

  • 📝 Memory Editor & Fidelity Preservation: Input rough notes, approximate dates, family relationships, categories, and tags. Preserves the user's authentic, unedited raw notes alongside any AI wording.
  • ✨ AI Story Enhancement: Transforms rough notes into full, touching narratives across three selectable voices: Warm & Heartfelt, Simple & Conversational, and Nostalgic & Reflective. Strictly preserves facts without hallucinating unmentioned events or tragedies.
  • 💭 Gentle Oral History Interview Assistant: Formulates 5 gentle, non-intrusive questions (e.g., sensory details, family traditions, exact quotes) that users can answer to organically expand their memories.
  • 📚 SQLite Memory Library: Full-text search and filtering by category or tag, with dual side-by-side inspection of original notes and the enhanced narrative.
  • 🕯️ Remembrance Sanctuary: Creates dignified memorial pages honoring loved ones with life dates, favorite sayings, important traditions, and linked stories.
  • 📦 Verified Export & Restores: One-click exports to Markdown (.md) or text (.txt), plus validated JSON full-database backups with duplicate protection.
  • 🛡️ 100% Privacy & Local Sovereignty: Zero cloud API calls, zero telemetry, zero model training on user grief, and complete confirmation-guarded data deletion.

Demo

Here is a look at Echoes AI running locally in Streamlit with its warm scrapbook aesthetic:

+-----------------------------------------------------------------------------------------+
|  📖 Echoes AI                                                                           |
|  “Every memory deserves to live on.”                                                    |
|  A Private, Local-First Memory Journal & Story Preserver                                |
+-----------------------------------------------------------------------------------------+
| [Navigation]                                                                            |
|  (*) Write & Enhance Memory   ( ) Memory Library   ( ) Remembrance Page   ( ) Backup    |
|                                                                                         |
|  Memory Title: Sunday Lemonade on the Screened Porch                                    |
|  Category: Childhood | Date: Summer 1994 | People: Grandma Clara, Cousin Leo            |
|                                                                                         |
|  Raw Notes:                                                                             |
|  > Hot July afternoon in Ohio. Cicadas loud in maple trees. Grandma squeezed lemons     |
|  > into cracked yellow pitcher. Used cane sugar & garden mint. Creaky cedar swing.      |
|                                                                                         |
|  [✨ AI Narrative Preview - Warm & Heartfelt Voice]                                     |
|  "The heavy heat of an Ohio July always seemed to soften the moment we stepped onto     |
|   Grandma Clara's screened porch. While the cicadas hummed their rhythmic summer song   |
|   high in the maple trees, Grandma was already at work with her beloved yellow ceramic  |
|   pitcher—its handle bearing familiar small chips from decades of Sunday gatherings.   |
|   With patient hands, she stirred fresh-squeezed lemons with sweet cane sugar and crisp |
|   spearmint plucked right from behind the shed..."                                      |
+-----------------------------------------------------------------------------------------+
Enter fullscreen mode Exit fullscreen mode

You can run it locally in under 2 minutes:

git clone https://github.com/song-code-won/echoes-ai.git
cd echoes-ai
pip install -r requirements.txt
streamlit run app.py
Enter fullscreen mode Exit fullscreen mode

Code

The complete source code is open source under the MIT License:

GitHub logo song-code-won / echoes-ai

Echoes AI — A Private, Local-First Memory Journal built for Hacktoberfest 2026 Ghost in the Machine

📖 Echoes AI — A Private, Local-First Memory Journal

“Every memory deserves to live on.”

License: MIT Python: 3.10+ Streamlit: 1.35+ Ollama: Local Tests: 20 passed


🌟 Project Motivation

Family stories, childhood traditions, and the quiet wisdom of loved ones are fragile. Too often, they slip away because we only have scattered notes, half-remembered fragments, or lack the time to craft them into a lasting narrative.

Yet handing personal, emotionally intimate memories over to cloud-based AI services comes at an unacceptable privacy cost: personal grief and family history sent over third-party networks, analyzed, and ingested into corporate training models. Furthermore, many commercial tools cross ethical lines by promising creepy digital avatars or claiming to "talk to the dead."

Echoes AI was created for the Hacktoberfest 2026 DEV Open-Source AI Challenge, Week 4: “Ghost in the Machine”. It is a respectful, quiet digital sanctuary that preserves true personal stories entirely on your own computer.


🏛️ System Architecture

flowchart TD
    User([User /
…

Repository: https://github.com/song-code-won/echoes-ai

Key Project Architecture:

echoes-ai/
├── app.py                         # Streamlit UI with Cream & Burgundy Scrapbook Design
├── config.py                      # Local paths, model choices, narrative styles
├── services/
│   ├── memory_repository.py       # Thread-safe SQLite database manager
│   ├── ollama_client.py           # Local REST client (127.0.0.1:11434)
│   ├── story_writer.py            # Factual-fidelity narrative enhancer
│   ├── interview_questions.py     # Gentle oral history prompt generator
│   ├── remembrance_builder.py     # Dignified tribute page synthesizer
│   └── export_service.py          # Markdown, TXT & JSON backup/restore
├── prompts/                       # Transparent prompt templates
└── tests/                         # 20 automated pytest test cases (100% pass)
Enter fullscreen mode Exit fullscreen mode

How I Built It

Echoes AI was engineered from the ground up around local, open-source AI and zero-cloud architecture:

  1. Local LLM Engine (Ollama + Qwen 2.5):
    • Inference runs via Ollama on http://127.0.0.1:11434.
    • The default model is qwen2.5:3b (Apache 2.0 license), which provides incredible storytelling nuance, emotional warmth, and fact-following capability while requiring only ~3.5 GB of RAM/VRAM.
    • Also supports qwen2.5:7b, llama3.2:3b, or mistral:7b seamlessly through an in-app selector.
  2. Deterministic Offline Fallbacks:
    • If Ollama is offline or not installed, the app doesn't crash: it gracefully switches to curated offline interview questions and structured Markdown memorial templates, allowing core journaling to work 100% offline.
  3. Streamlit Frontend with Custom Aesthetic CSS:
    • Designed with warm cream (#FAF7F2), muted burgundy (#6B1D2F), and subtle marigold (#D9822B) tones paired with serif typography (Crimson Pro), creating a calm, respectful journal experience rather than a cold tech dashboard.
  4. SQLite & Data Integrity Layer:
    • Custom thread-safe MemoryRepository using native Python sqlite3.
    • Strict duplicate detection and payload validation when restoring from JSON backups.
  5. Automated Testing Suite:
    • 20 comprehensive pytest tests mocking AI responses to verify CRUD operations, search filters, prompt formatting, and error handling without requiring live model downloads.

Why Does Open Innovation Matter?

When preserving personal stories, family traditions, and tributes to lost loved ones, open innovation and local models are not merely a nice feature — they are an ethical necessity:

  1. Freedom from Data Harvesting: Cloud AI services frequently retain prompts or reserve rights to train future foundation models on user text. Personal grief, family disputes, and intimate childhood memories should never become training weights for a tech conglomerate.
  2. Immunity from Service Deprecation: When you rely on a proprietary cloud API, your software breaks the day the provider shuts down an endpoint or changes billing tiers. An open-weight model like Qwen 2.5 running on your own CPU/GPU via Ollama will run 20 years from now exactly as it does today.
  3. Ethical Guardrails You Control: Closed commercial platforms often push "AI companions" that try to mimic deceased people. Open-source code allows us to establish firm, transparent boundaries: our prompt templates and architecture strictly prohibit digital impersonation while respecting genuine human memory.

The Spirit of It

During testing, I entered raw notes about a family member's Sunday lemonade ritual — the yellow ceramic pitcher with chips on the handle, the sound of cicadas in the trees, and the quiet advice that "patience makes sweet lemonade, but hurried lemonade always stays sour."

Seeing those scattered bullet points woven into a cohesive, warm story without inventing fake details or adding cheesy embellishments was genuinely moving. It captured the exact feeling of sitting on that wooden porch thirty years ago.

That is the true spirit of Echoes AI: the machine doesn't replace the human heart — it simply helps us hold on to the light our loved ones left behind.


Prize Categories

  • Primary Challenge: Hacktoberfest Open-Source AI Challenge Week 4: “Ghost in the Machine”
  • General Track: Open-Source AI Applications / Local-First AI

Top comments (0)