What I Built
Pocket Ledger is an offline-first receipt and invoice sorter built for freelancers, contractors, and small teams who want a faster way to organize financial paperwork without sacrificing privacy.
The app lets users upload PDFs or images of receipts, extracts key details like vendor, date, amount, currency, and category using an AI model, and then automatically copies the files into organized folders. It also generates an editable CSV for bookkeeping and tax prep.
This solves a real pain point: manually sorting receipts is tedious, error-prone, and time-consuming. Pocket Ledger turns that workflow into a simple “upload → review → export” process while keeping the experience local-first and flexible.
I built the app locally and ran it in development with Streamlit:
- Local demo: https://youtube.com/shorts/TDSnhUZL1Lk
- Repo: https://github.com/Nirajkam/Week2challageof_hackoctoberfest2026
A quick walkthrough:
- Upload PDF or image receipts
- Choose a local Ollama model or a cloud provider
- Let the app extract structured fields
- Review the generated entries
- Export organized files and CSV data
Code
GitHub: https://github.com/Nirajkam/Week2challageof_hackoctoberfest2026
How I Built It
I built Pocket Ledger with Python and Streamlit, using an open-source-first AI workflow.
The app supports multiple LLM providers:
- Ollama (local/offline)
- OpenAI
- Google Gemini
- Anthropic Claude
- Groq
For local use, the project works with Ollama models such as gemma3:4b, llava, and moondream, so sensitive documents can stay on the user’s machine. For cloud use, users can plug in a provider and API key.
The backend does a few things:
- Reads image/PDF input
- Extracts text from PDFs using PyMuPDF when needed
- Sends the document to the chosen model with a strict JSON schema prompt
- Validates the returned data
- Organizes files into category/year folders without overwriting duplicates
- Writes a CSV for review and export
This keeps the system modular and model-agnostic, which makes it easy to swap providers without changing the app workflow.
Why Does Open Innovation Matter?
Open innovation matters here because financial documents are sensitive, and not everyone wants to send personal or business data to a third-party service.
Using open-source models through Ollama and flexible provider support makes the app:
- private by default
- local-first when needed
- accessible to people without a fixed vendor lock-in
- easier to adapt for different budgets and use cases
A closed API-only approach would have forced users to trust a single provider and often required uploading receipts to the cloud. Open-source models and local inference make it possible to build something more privacy-conscious and more accessible to everyday freelancers and small businesses.
My Agent Session
I’m documenting the build process and session history while refining the project, and I plan to save the final agent session alongside the project notes for transparency and reproducibility.
Prize Categories
Hacktoberfest Open-Source AI Challenge — Week 2: Side Hustle
This project fits the “side hustle” spirit by turning a practical daily pain point into a useful, open-source AI workflow that can be extended by others.

Top comments (0)