Don'tLose:找出你快要忘記的期限的開源 AI
Don'tLose: An Open-Source AI That Finds the Deadlines You're About to Forget
Don'tLose 是一款以本機優先的開源 AI 應用程式,能從收據和文件找出退貨期限、保養期、續訂等重要日期,並列於時間軸。它透過 Ollama 在本機運行 Google 的開放權重模型 Gemma 3 4B,為提取的資料提供來源證據,讓用戶審核、修正或拒絕;文件毋須傳送至付費 AI API。
This is a submission for the Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady.
What I Built
Ever bought something, saved the receipt somewhere, and forgotten about it until the return window closed?
That's the problem I wanted to solve with Don'tLose.
Don'tLose is a local-first AI application that helps you discover important dates hidden in receipts and documents, including return deadlines, warranties, renewals, and other upcoming obligations.
Upload receipts and PDFs, add an item manually, and let local AI extract relevant information. Don'tLose connects related documents, shows the evidence behind extracted facts, and puts confirmed deadlines on a timeline.
The goal is simple: stop losing money and missing important dates just because you forgot to check a document.
Demo
Try Don'tLose live:
Code
The code is open source, and you're welcome to explore, fork, and build on it!
Don'tLose
You bought the thing. The receipt went into a folder. Three weeks later the return window closed and you found out by trying to return it.
Don'tLose is a deadline safety net for receipts, warranties, subscriptions, renewals, library cards, and the document you swore you would deal with. Drop them in, or type what you already know, and the dates that are actually in there show up on a timeline before they sneak past you.
Nothing is sent to a paid AI API.
Try it
The demo is live at dontlose.onrender.com.
On that copy you can add items by hand and read a text PDF. Photos and Gemma stay on a computer you run yourself, because that server has no Tesseract and no Ollama. The free instance sleeps when nobody is visiting, so the first open can sit on "Gathering your deadlines" for about a minute. Items there…
How I Built It
The application combines a web interface, document processing, and local AI inference.
- Frontend: Next.js, TypeScript, and Tailwind CSS.
- Backend: Python and FastAPI.
- Database: SQLite.
- OCR: Tesseract for extracting text from images.
- PDF processing: PyMuPDF for reading text-based PDFs.
- AI: Google's open-weight Gemma 3 4B model, running locally through Ollama.
Gemma is not just an OCR replacement. OCR extracts the text; Gemma interprets it and identifies relevant items, merchants, prices, dates, and potential deadline information.
I also implemented evidence-backed extraction. Each extracted fact can be reviewed, corrected, or rejected, with its source excerpt available to the user.
One important design principle is that deadlines are calculated, not guessed. Application code handles date calculations, and uncertain dates require clarification or confirmation instead of being silently invented by the model.
Why Does Open Innovation Matter?
Receipts, purchases, and personal documents can contain sensitive information. I wanted an approach that doesn't require sending those documents to a paid AI API.
By using Gemma through Ollama, Don'tLose can process documents locally, keeping their contents on the user's machine during local operation. The model can also be replaced or adapted without rebuilding the entire application around a proprietary AI service.
Open-weight AI made it possible to build a useful document-understanding workflow without per-request AI API charges.
The important distinction is that the application does more than extract text: it combines local AI interpretation with deterministic validation, evidence, and user confirmation.
The Lazy Payoff
The idea is to turn a pile of receipts and forgotten documents into a useful timeline with minimal manual effort.
Instead of opening every document and searching for dates yourself, you can upload documents, review the extracted facts, and focus on the items that need attention.
I haven't measured actual time or money saved yet, so I won't invent numbers. The intended payoff is fewer missed deadlines and less time spent searching through documents.
Prize Categories
- Gemma — Best Use of Gemma: Using Gemma 3 4B through Ollama as the core document-understanding model.
- Render — Best Use of Render: Hosting the web application and providing an accessible online demo.
來源:DEV Community · dev.to