This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend
What I Built
I built PromisePocket for my best friend and roommate, Rahul.
Like many college students juggling coursework, exam deadlines, and personal life, Rahul is someone with a huge heart who constantly wants to be there for everyone. He frequently makes genuine, heartfelt promises in casual conversations or voice messages:
- "I'll call Ma tomorrow at 7 PM after class."
- "I'll return Priya's notebook on Friday morning."
- "Remind me to pick up Dad's medication before the clinic closes."
- "I promised Arjun I'd review his resume this weekend."
The problem isn't a lack of caring — it's mental bandwidth. Traditional productivity apps and project management tools (like Jira, Notion, or Todoist) feel cold, rigid, and overwhelming for personal commitments. People don't want to create "epics" or fill out tedious multi-step forms just to remember to check in on their grandmother. As a result, these commitments get lost across chats, voice notes, and fleeting thoughts, leading to missed moments and quiet guilt.
PromisePocket is a warm, intelligent personal assistant that bridges that gap. It lets you speak or type naturally, uses open-weight AI to understand multi-clause commitments, detects ambiguities, and asks for your confirmation before saving them to a searchable personal memory with reliable reminders.
The core philosophy is simple: "Remember the little things. Keep the promises that matter."
Demo
- 🚀 Live Demo: https://promisepocket.onrender.com
- 💻 GitHub Repository: https://github.com/Sayan-das-001/PromisePocket
Key Features in Action:
- Natural-Language Multi-Clause Capture: Type or speak "I'll call Ma tomorrow at 7 PM and return Rahul's book on Friday". The engine automatically splits this into two separate, structured proposals rather than clumping them together.
- Human-in-the-Loop Confirmation: AI proposals are never scheduled unilaterally. The user can review, edit time/category, accept, or dismiss proposals before anything touches the database.
- Conversational Memory: Ask questions like "What did I promise Rahul?" or "What do I have to do this weekend?" and get grounded answers citing your actual stored commitments.
- Resilient Reminder Engine: Background reminders that persist across app restarts and notify you in-app or via your browser.
- Relationship-Centered Circle: Organize commitments around the people in your life (Family, Friends, Colleagues, Health).
Code
Sayan-das-001
/
PromisePocket
PromisePocket — A smart promise and commitment management platform with AI-powered assistance, intelligent reminders, and personalized insights to help you stay organized and never miss what matters.
PromisePocket 🤝
"Remember the little things. Keep the promises that matter."
PromisePocket is a warm, human-centered AI personal and family commitment assistant. It turns everyday spoken notes and natural-language messages into structured, editable commitments, verifies details with the user before scheduling, and uses durable workflows to deliver reliable reminders.
✨ Key Capabilities
-
Multi-Clause Natural Language Extraction
- Speak or type: "I'll call Ma tomorrow at 7 PM and return Rahul's book on Friday".
- PromisePocket extracts two distinct proposals with timezone-aware date resolution.
-
User Confirmation First
- AI suggestions are never scheduled commitments until you review, edit, and confirm.
-
Conversational Assistant with Grounded Memory:
- Ask: "What did I promise Rahul?"
- Grounded strictly in your authenticated personal database with citations to matching records.
-
Calendar & Month/Week Views:
- Review promises by date with status indicator dots, day-level promise cards, and quick actions.
-
People I Care About
- Organize promises by…
Explore the open-source repository on GitHub:
👉 PromisePocket on GitHub
The codebase is structured cleanly into:
-
/frontend: Modern React 18, Vite, TypeScript, Tailwind CSS, Lucide icons, and responsive mobile-first dock navigation. -
/backend: FastAPI, Pydantic V2, Uvicorn, and clean layered architecture (APIs, repositories, AI services). -
Dockerfile: Multi-stage build packaging both frontend and backend into a single container for 100% free cloud deployment.
How I Built It
1. Open-Source AI Architecture (Google Gemma 2)
PromisePocket is powered by Google's Gemma 2 (9B-IT) open-weight model, run with a zero-cost hybrid strategy:
-
Local Inference via Ollama: Runs completely offline and private on your machine using Ollama (
gemma:2borgemma:9b). - Cloud Open-Weight Inference via Groq: Fast cloud inference using open-weight Gemma 2 on free tier quotas.
- Deterministic Fallback Engine: If no external AI endpoint is available, a built-in deterministic extractor handles multi-clause splitting, regex extraction, and timezone-aware date parsing with 0 external dependencies.
2. Timezone-Aware Date & Ambiguity Resolver
Natural language is filled with relative expressions ("tomorrow evening", "next Tuesday at 6 PM", "after class"). Our DateResolver computes precise dates relative to the user's IANA timezone and flags ambiguities ("Class timing is unspecified. You may want to choose a specific hour.").
3. Database & Durability
- MongoDB Atlas (Free M0 Tier): Stores users, relationships, commitments, and notifications with schema validation and text indexing. PyMongo TLS connections feature custom OCSP bypass resilience for containerized cloud environments.
-
In-Process Reminder Engine + Temporal: Reminders run through an embedded async background task in the FastAPI lifespan for 100% zero-cost cloud hosting, with full Temporal workflow definitions (
reminder_workflow.py) available for enterprise workflow distribution.
4. Voice Interaction
- Integrated with browser-native Web Speech API for real-time speech-to-text with zero API latency.
- Optional ElevenLabs voice synthesis integration for spoken reminders and audio transcription.
Why Does Open Innovation Matter?
Open innovation matters profoundly for an app like PromisePocket for three key reasons:
- Privacy for Intimate Commitments: Promises made to our parents, partners, and friends are deeply personal. They shouldn't be sent to proprietary closed-door APIs that use your data for advertising or model retraining. Open-weight models like Gemma make it possible to run inference locally on your own machine or on self-hosted infrastructure where your data never leaves your control.
- Zero-Cost Democratization: Building full-stack AI applications shouldn't require a venture-backed budget. Thanks to open-weight models, open-source web frameworks (FastAPI, React), and generous community tiers (MongoDB Atlas, Render), an independent student developer can build and deploy a production-grade AI assistant at $0.00 / month.
- Transparency and Predictability: Closed APIs frequently change pricing, deprecate endpoints, or alter prompt behaviors without warning. Open innovation gives developers full inspectability into how intent classification, schema validation, and date parsing work, ensuring that critical commitments are never dropped.
My Agent Session
This project was built pair-programming with AI using an autonomous software engineering loop:
- Designing the multi-tier AI extractor (Gemma + Groq + deterministic hybrid).
- Developing the React 18 / Tailwind mobile dock UI inspired by intuitive personal assistant designs.
- Solving complex container deployment challenges (multi-stage Docker build, headless health checks, PyMongo Atlas TLS certificate negotiation in Linux containers).
- Writing and passing a 100% test suite covering multi-clause parsing, data isolation, and reminder workers.
Prize Categories
I am submitting PromisePocket for the following challenge categories:
- Built with Gemma: Powered by Google's open-weight Gemma 2 model for commitment extraction, intent classification, and grounded personal memory.
- MongoDB Atlas Integration: Utilizing MongoDB Atlas Free Tier for document storage, multi-index full-text search, and multi-tenant data isolation.
- Temporal Integration: Implementing durable reminder workflows that survive process restarts.
- ElevenLabs Voice AI: Incorporating natural voice note capture and conversational audio playback.
- Render Deployment: Packaged via multi-stage Docker and deployed as a live web application on Render.
Remember the little things. Keep the promises that matter. 💙

Top comments (0)