Lumi — A Little AI Companion for the Things We Forget to Say
This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend
Tags: #hacktoberfest #ai #opensource #gemma
The Problem Wasn't Big. It Was Everything Small.
There are some problems that don't look like problems until you see them happening every day.
For my friend, it was the little things.
She often has something she wants to tell me.
Maybe something funny happened during college.
Maybe a professor said something she wants to share later.
Maybe she suddenly remembers something important in the middle of a completely unrelated conversation.
Sometimes she thinks:
"I need to tell him this later."
And then the day continues.
Classes.
Messages.
Assignments.
Family stuff.
Random thoughts.
A hundred other little things.
By the time she gets a moment to breathe, the thought is gone.
And sometimes it is not even about remembering something to tell someone.
There are days when deciding something as simple as "What should I eat?" becomes another small problem to solve.
She might have a few ingredients at home but still be completely confused about what she can make with them.
None of these things are huge problems individually.
But when enough small things pile up, they become exhausting.
I started thinking:
What if she didn't have to organize every thought before saving it?
What if she could simply say what was on her mind?
What if something could quietly keep track of the little things she didn't want to lose?
That idea became Lumi.
What I Built
Lumi is a small personal AI companion built for a friend who has a lot of little things to remember, share, and figure out throughout the day.
The idea is intentionally simple:
Don't organize your thought. Just tell Lumi.
Lumi uses Gemma 2 2B running locally through Ollama to understand natural-language input and turn it into useful structured information.
Instead of asking:
- What category is this?
- Is this a reminder?
- Who is this for?
- What priority should it have?
- Where should I save this?
She can simply write something like:
"I need to tell Neeraj later what my professor said today 😂"
Lumi understands the intention and saves it as something to tell later.
No complicated form.
No perfect wording.
Just a thought.
The Little Things Lumi Helps With
💌 Tell Neeraj Later
This is the feature that started the whole idea.
Sometimes you remember something you want to tell someone, but not right now.
Lumi gives those thoughts somewhere to go.
The user can write naturally and Lumi identifies the intention, recipient, category, priority, and content.
For example:
"I need to tell Neeraj that my professor said something really funny today."
Lumi turns that into a structured item that can be revisited later.
So instead of trying to keep the thought somewhere in your head:
Tell Lumi.
💭 Remember the Little Things
Not everything needs to become a task.
Some things are simply worth remembering.
A moment.
A thought.
Something that happened today.
Something you don't want to lose.
Lumi can save those thoughts as memories so they don't disappear underneath everything else happening during the day.
The goal isn't to build a giant productivity system.
It's to create a small space for things that matter.
🍽️ "What Should I Eat?"
This sounds simple.
It isn't always.
Sometimes you have ingredients available but absolutely no idea what to do with them.
Lumi can help turn those ingredients into simple meal ideas.
For example:
"I have carrots and potatoes. What can I make?"
Lumi works only with the ingredients provided rather than inventing ingredients that weren't mentioned.
And this feature is deliberately kept as simple meal assistance, not medical or nutritional advice.
Sometimes you don't need another complicated recommendation system.
You just need someone to say:
"You could make this."
🧠 One Messy Thought Can Become Multiple Actions
Real thoughts aren't always neatly organized.
People don't naturally think like:
Task 1
Task 2
Task 3
They think more like:
"I need to finish my assignment, call mom tonight, and also remember to tell Neeraj about what happened in college."
Lumi can understand that one messy thought and separate it into multiple actionable items.
This was one of the things I really wanted from the project:
The user shouldn't have to organize their brain before using the tool.
The tool should help with the organization.
🔎 Ask Lumi
Once you start saving things, another problem appears:
"Wait... what did I save?"
That's where Ask Lumi comes in.
You can ask questions like:
"What memories do I have?"
or:
"What did I want to tell Neeraj recently?"
or:
"What have I saved about college?"
Lumi first searches the saved records in MongoDB.
Then the relevant information is given to Gemma as context.
Gemma generates the answer from that retrieved information.
This is important because Lumi isn't supposed to invent memories.
If the information isn't in the saved records, Lumi shouldn't pretend that it is.
A Small Self-Care Corner
There is also a gentle self-care section for things like meals and hydration.
The idea isn't to build a health application.
It is much simpler.
Sometimes when you're busy, you can go through half the day without noticing that you haven't eaten or had enough water.
So Lumi provides simple check-ins for:
- Breakfast
- Lunch
- Dinner
- Hydration
It's intentionally gentle.
No medical claims.
No complicated health tracking.
Just a small reminder that says:
Hey, take care of yourself too. ♡
Demo
🎥 Watch Lumi in Action
Loom Demo:
https://www.loom.com/share/0e528edef0164a4d9ddc32188f989f82
The demo shows the complete experience:
- Natural-language capture
- Tell Neeraj Later
- Meal assistance
- Turning a messy thought into multiple actions
- Ask Lumi
- Local Gemma inference through Ollama
What Lumi Looks Like
Quick Capture
The homepage is intentionally simple.
There isn't a giant form asking the user to categorize their life.
There is just a question:
"What do you want to remember?"
The user can type naturally.
Things to Tell Neeraj
This is where the little thoughts waiting to be shared live.
Instead of keeping them in your head and hoping you remember later, Lumi keeps them in one place.
Gentle Self-Care
Simple meal and hydration check-ins designed to feel supportive rather than overwhelming.
Ask Lumi
Ask a question about saved memories and notes.
Lumi retrieves relevant records and uses local Gemma to turn those records into a natural response.
How I Built It
The most important technical decision in Lumi was:
I didn't want the AI to be a decorative chatbot.
I wanted the open-source model to be part of the actual application architecture.
Lumi uses:
- Gemma 2 2B — open-weight AI model
- Ollama — local AI runtime
- Node.js + Express — backend
- React + Vite — frontend
- MongoDB Atlas — persistence
- Tailwind CSS — UI styling
- Framer Motion — interactions and animation
The main architecture looks like this:
Under the Hood
The main flow is:
text
User
↓
React + Vite
↓
Node.js + Express
↓
AI Interpretation Layer
↓
Ollama
↓
Gemma 2 2B
↓
Structured AI Result
↓
Validation + Guardrails
↓
MongoDB Atlas
↓
Lumi UI




Top comments (0)