MemorialAvisos: A Privacy-First Multi-Agent System for Respectful Memorial Pages
For Hacktoberfest Week 4, I built MemorialAvisos - an open-source, multi-agent system that helps families create respectful memorial pages and notify loved ones during difficult times, using only open-weight models.
The Problem
When someone passes away, families need to notify others quickly but with dignity. Too often this happens through rushed group messages on social media - exposing private details, lacking structure, and offering no real space for remembrance. Families deserve something better.
The Solution
MemorialAvisos uses four specialized AI agents orchestrated by Temporal to create a complete memorial experience. All AI runs locally through Ollama with open-weight Gemma models - no data ever leaves your machine.
The Four Agents
| Agent | Model | Role |
|---|---|---|
| MemorialAgent | gemma4:e4b |
Writes empathetic, personalized tributes celebrating the person's life |
| EventAgent | gemma3:4b |
Organizes funeral/wake details, locations, and offering options |
| WebBuilderAgent | gemma4:e4b |
Generates a secure, responsive, ad-free memorial page |
| DispatchAgent | gemma3:4b |
Creates respectful, personalized notifications for each contact |
Tech Stack
- Backend: Ruby on Rails 8.0
- Orchestration: Temporal (resilient workflows)
- Database: MongoDB
- AI: Ollama with Gemma 4/e4b & Gemma 3/4b (100% open-weight)
- Infrastructure: Docker, Redis, Nginx
Why Open Innovation Matters
This project wouldn't make sense with a closed API. Here's why an open-based approach was essential:
- It works offline. With Ollama running locally, MemorialAvisos works with the lights on and the internet off. No API calls, no external dependencies for AI inference.
- Family stories stay private. Photos, memories, names, locations, and contact details never leave your machine. This is non-negotiable when dealing with something as sensitive as grief.
- No risk of disappearing. If a closed AI service shuts down, changes pricing, or blocks access, this project would stop working. With open-weight models, the models are downloaded once and belong to you forever.
- Truly auditable. Every agent prompt is visible in the repo. You can see exactly how the AI is instructed, with no hidden system prompts or black-box behavior.
- No vendor lock-in. You can swap models, modify prompts, or extend the system however you want. The code and models are yours.
Where open worked better: With closed APIs, I'd have to send deeply personal family information to third-party servers and pay per generation. With open-weight Gemma running locally, it's free, private, and works on air-gapped machines. The privacy constraint alone made local open models the only viable option.
Get Started
git clone https://github.com/adalbertobrant/halloween_hacktoberfest2026
cd halloween_hacktoberfest2026
ollama pull gemma4:e4b
ollama pull gemma3:4b
cp .env.example .env
docker-compose up --build
View on GitHub - All prompts, architecture, and documentation included.
Built with respect, empathy, and open-source for Hacktoberfest Week 4.
Top comments (0)