Inspiration
Lummy started from a simple idea: an AI companion should feel continuous without turning personal history into a public feed or a vague cloud of reminders. We wanted something warm, memory-aware, and private by default, with enough structure to be useful for real conversations instead of only one-off prompts.
What it does
Lummy gives each user a private chat space with persistent memory, account-based authentication, email verification, Heart voice selection, hands-free speech input, conversation search, and plan-based memory quotas. It also supports staff and billing flows, plus a safe optional search mode when the user explicitly asks for it.
How we built it
The product is split across a Next.js frontend in app/ and a Django backend in backend/. The frontend handles the landing experience, auth screens, chat UI, and voice interactions. The backend owns registration, verification, JWT sessions, shared memory partitioning, conversation history, billing, and operational routes. Persistent data lives in Cloud SQL PostgreSQL, with Resend for email and Paystack for billing.
Challenges we ran into
The hardest part was keeping memory useful while still enforcing strict user isolation. We also had to make the local development flow reliable on Linux, handle refreshable auth cleanly across the web app, and keep the hands-free speech loop responsive without letting voice input or playback fight with the chat lifecycle.
Accomplishments that we're proud of
We shipped a coherent end-to-end experience: onboarding, verification, login, chat, memory, voice choice, usage tracking, and billing all connect through the same account model. The landing page and chat experience both present Lummy as a single companion with a clear identity, and the memory model stays private rather than becoming a cross-user data layer.
What we learned
We learned that a good companion product depends as much on boundaries as it does on model quality. Clear account isolation, explicit search behavior, durable conversation state, and predictable operational routes matter just as much as the conversation itself. We also learned that small product choices, like voice tone and memory presentation, change how personal the experience feels.
What's next for Lummy
Next, we want to improve the quality of remembered context, expand the set of memory controls available to users, and refine the companion’s long-term continuity across devices. We also want to keep tightening billing, admin tooling, and deployment reliability so Lummy can move from a polished local product into a steadier production service.
Built With
- next.js
- pythin
Log in or sign up for Devpost to join the conversation.