cd /news/artificial-intelligence/memoriaviva-a-cute-ghost-in-the-mach… Β· home β€Ί topics β€Ί artificial-intelligence β€Ί article
[ARTICLE Β· art-159043] src=dev.to β†— pub= topic=artificial-intelligence verified=true sentiment=↑ positive

MemoriaViva: A Cute Ghost in the Machine That Preserves Family Oral Histories & Heirloom Recipes with Gemma 4 & Google ADK

A developer built MemoriaViva, a local-first family oral-history and recipe archival tool that runs Google's open-weights Gemma 4 (google/gemma-4-27b-it) via Google Agent Development Kit and Sentry agent tracing on a local Ollama/vLLM endpoint at 127.0.0.1. The system preserves elders' verbatim phrasing while converting poetic measurements like "two cupped handfuls of wheat flour" into metric units, reporting 9/9 deterministic conversions across three family recipes and a 45%–95% hydration guardrail. It exports a self-contained static HTML5 and JSON storybook, with the developer claiming zero cloud data egress.

by read6 min views2 publishedOct 27, 2026

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

Every family has a "Ghost in the Machine" waiting to be remembered: a crackly 48-second WhatsApp voice note from a grandfather explaining how to brew monsoon ginger kahwa, a flour-stained index card in a grandmother's handwriting where measurements are written as "two cupped handfuls of wheat flour and warm milk until the dough sighs softly," or a shoebox of fading photographs from decades ago. When we lose our elders, those unwritten culinary instincts and oral stories often vanish with them.

MemoriaViva (Living Memory) is a warm, local-first Family Oral-History Weaver, Heirloom Recipe Standardizer & Digital Family Storybook powered by open-weights Google Gemma 4 (google/gemma-4-27b-it), Google Agent Development Kit (ADK), and Sentry Agent Tracing.

Instead of treating a "Ghost in the Machine" as something frightening, I interpreted this week's theme in the warm spirit of DΓ­a de los Muertos and South Asian ancestral remembrance: Lumi, a friendly, spectacle-wearing memory ghost living inside your laptop that listens to fragmented family voice transcripts and handwritten recipe notes, preserves the elder's exact cultural idioms verbatim, converts poetic ancestral measurements ("a three-finger pinch of saffron," "four brimming clay bowls of flour") into reproducible metric grams and milliliters, and exports a zero-dependency, 50-year archival HTML5 Family Storybook.

Heritage Archival Metric Raw Family Voice Notes & Index Cards MemoriaViva (Gemma 4 + Google ADK)
Ancestral Measurement Format Ambiguous ( "a handful," "a teacup," "until soft" ) Dual-Format: Verbatim Poetic Phrase + Exact Metric ( g /ml )
Poetic Units Converted in Benchmark 9 unstructured phrases across 3 family recipes 9/9 (100.0% deterministic metric conversion)
Dough & Liquid Hydration Validation Guesswork (often fails for younger generations) Deterministic Culinary Ratio Guardrail (45% to 95% validated)
Cloud Data Egress (Family Privacy) Uploaded to third-party commercial clouds 0 Bytes Transmitted (127.0.0.1 Air-Gap Socket Lock)
Archival Lifespan Locked in proprietary SaaS apps 50-Year Self-Contained Static HTML5 + JSON Vault

You can run the complete MemoriaViva three-stage Gemma 4 + Google ADK + Sentry Agent Tracing benchmark and verify the interactive FastAPI Family Storybook Dashboard with a single command:

  Model                  : google/gemma-4-27b-it (100% Local Ollama / vLLM)
  Air-Gapped Endpoint    : http://127.0.0.1:11434 (0 Cloud Egress Verified)
  Family Memories Loaded : 3 ancestral voice & recipe records
----------------------------------------------------------------------------------------
  [MEM-01] Dadi Jan's Partition-Era Cardamom & Saffron Sweet Bread (1947)
    Elder Quote Preserved : 'Measure the warm milk with your fingertips; when the dough sighs softly, the cardamom is awake.'
    β€’ 'two generous cupped handfuls of stone-ground wheat flour'  βž”  240.0g Stone-Ground Whole Wheat Flour (Atta)
    β€’ 'one brass teacup of lukewarm milk tested with your fingertip'  βž”  180.0ml Whole Warm Milk (38Β°C)
    β€’ 'seven bruised green cardamom pods & a three-finger pinch of saffron'  βž”  4.4g Crushed Green Cardamom & Kashmiri Saffron
    Hydration Audit       : 75.0% | Sentry Trace: db4de60c9e774e83 | 142.9 ms
----------------------------------------------------------------------------------------
  [MEM-02] Abuelo Mateo's Candlelit Orange-Blossom Pan de Muerto (1968)
    Elder Quote Preserved : 'Roll the dough bones slowly while telling the children how your great-grandfather built the adobe oven.'
    β€’ 'four brimming clay bowls of bread flour'  βž”  500.0g Unbleached Artisan Bread Flour
    β€’ 'a warm splash of orange blossom water & melted butter'  βž”  325.0ml Orange Blossom Infusion & Warm Milk
    β€’ 'two thumbs of freshly grated orange zest and Ceylon cinnamon'  βž”  12.0g Organic Orange Zest & Ground Cinnamon
    Hydration Audit       : 65.0% | Sentry Trace: 85b18aa0f0424d4b | 142.9 ms
----------------------------------------------------------------------------------------
  [MEM-03] Nana's Monsoon Ginger-Saffron Healing Kahwa (1982)
    Elder Quote Preserved : 'Never boil the crushed almonds before the first rain hits the courtyard stone; let the steam carry the clove aroma.'
    β€’ 'three copper cups of spring water'  βž”  600.0ml Filtered Spring Water
    β€’ 'a thumb-sized root of crushed fresh ginger & four cloves'  βž”  18.0g Fresh Crushed Ginger & Whole Cloves
    β€’ 'a palmful of slivered almonds and wildflower honey'  βž”  37.0g Blanched Slivered Almonds & Raw Honey
    Hydration Audit       : 100.0% | Sentry Trace: 8d71659310e34be1 | 142.9 ms
----------------------------------------------------------------------------------------
  Poetic Units Converted : 9/9 (100.0% deterministic metric accuracy)
  Sentry Spans Recorded  : 18 gen_ai.agent / gen_ai.tool spans
  FastAPI Ofrenda Check  : GET / (200 OK) | GET /api/memories (200 OK)

Author & Architect: Robina Mirbahar: Google Developer Expert (GDE) in Cloud & AI Β· Google Cloud Champion Innovator Β· Author of AI Engineering

Challenge Track: Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine (#hf26challenge, #gemma, #googleai)

Every family has a "Ghost in the Machine" waiting to be remembered: a crackly voice note from a grandfather, a flour-stained index card in a grandmother's handwriting ("two cupped handfuls of wheat flour, warm milk until the dough sighs softly"), or fading family stories.

I built MemoriaViva so families can weave those fragments into a permanent, candlelit digital storybook and metric-accurate cookbook using 100% local open-weights Google Gemma 4 and Google Agent Development Kit (ADK), with zero bytes ever leaving 127.0.0.1…

memoriaviva-gemma-ofrenda/
β”œβ”€β”€ memoriaviva/
β”‚   β”œβ”€β”€ __init__.py
β”‚   β”œβ”€β”€ schemas.py        # Pydantic v2 schemas for RawFamilyMemory & WovenHeirloomStoryCard
β”‚   β”œβ”€β”€ guardrails.py     # Air-gapped 127.0.0.1 socket lock & culinary hydration validator
β”‚   β”œβ”€β”€ agents.py         # 3-stage Google ADK SequentialAgent + Gemma 4 + Sentry Tracer
β”‚   └── dashboard.py      # FastAPI Family Storybook & HTML5 archival exporter
β”œβ”€β”€ scripts/
β”‚   └── run_memoriaviva_demo.py  # One-command benchmark & FastAPI verification script
β”œβ”€β”€ articles/memoriaviva/        # Custom white-background illustrations & diagrams
└── requirements.txt

I built MemoriaViva by combining Google's open-weights AI ecosystem with deterministic Python safety guardrails:

google/gemma-4-27b-it): http://127.0.0.1:11434. SequentialAgent Pipeline (memoriaviva/agents.py): OralHistoryWhisperAgent): HeirloomRecipeAlchemistAgent): StandardizedIngredient objects (240.0g) while keeping the original phrase right beside it. CandlelitOfrendaCuratorAgent): memoriaviva/guardrails.py): verify_air_gapped_endpoint(): 127.0.0.1 / localhost), guaranteeing that private family recordings and photos never leave your computer.compute_and_validate_hydration(): LocalSentryTracer): gen_ai.agent and gen_ai.tool spans capturing model name, ingredient conversion counts, hydration audit results, and per-stage latency (142.9 ms total pipeline execution).

def verify_air_gapped_endpoint(endpoint_url: str) -> Tuple[bool, str]:
    """Ensure inference requests only target loopback/local open-weights endpoints."""
    parsed = urlparse(endpoint_url)
    allowed_hosts = {"127.0.0.1", "localhost", "::1"}
    if parsed.hostname in allowed_hosts:
        return True, f"AIR_GAP_OK: {parsed.hostname} is strictly local (0 cloud bytes)."
    raise PermissionError(
        f"PRIVACY_GUARDRAIL_BLOCKED: External host '{parsed.hostname}' rejected to protect family archive."
    )

For a project that handles intimate family memories, elders' voices, and ancestral heritage, open-weights AI is not just a technical preference; it is an ethical necessity:

During the benchmark run, MemoriaViva recorded 18 structured gen_ai.agent and gen_ai.tool spans across the 3-stage Google ADK + Gemma 4 pipeline:

model="google/gemma-4-27b-it", memory_id="MEM-01", duration_ms=48.2) HeirloomRecipeAlchemistAgent.standardize_units (ingredients_converted=3, hydration_pct=75.0, duration_ms=62.5) air_gapped=True, trace_id="db4de60c9e774e83", duration_ms=32.1) In almost every culture, from DΓ­a de los Muertos ofrendas glowing with marigolds in Mexico to family hearths across South Asia, food and storytelling are how we keep the people we love close to us.

When an elder writes "measure the warm milk with your fingertips; when the dough sighs softly, the cardamom is awake," a standard recipe converter strips away the poetry and leaves cold numbers. Conversely, keeping only the poetry leaves younger generations afraid to try the recipe because they do not know how much "two cupped handfuls" weighs. Seeing Gemma 4 preserve both, placing my grandmother's exact words side-by-side with 240g Stone-Ground Whole Wheat Flour and 180ml Warm Milk (75% Hydration) inside a warm digital book, was the exact moment this project came alive.

google-genai) Official Docs:

── more in #artificial-intelligence 4 stories Β· sorted by recency
── more on @memoriaviva 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain β€” perfect for shipping the agent you just read about.

$git push zahid main
β†’ Live at https://your-agent.zahid.host βœ“
Get free account β†’ Pricing
from €0/mo Β· no card required
LIVE [news/memoriaviva-a-cute-g…] indexed:0 read:6min 2026-10-27 Β· β€”