{"slug": "pocketledger-a-private-ai-expense-tracker-for-freelancers", "title": "PocketLedger: A Private AI Expense Tracker for Freelancers", "summary": "A developer built PocketLedger, a local-first expense tracker for freelancers that uses the open-weight Qwen2.5-VL 3B vision model via Ollama to extract merchant, date, amount, currency, category and description from receipt images or pasted text. The app, written with Python's standard library, SQLite, HTML, CSS and vanilla JavaScript, shows each AI-extracted draft in an editable form and saves nothing to the ledger until the user approves it, keeping financial documents off cloud AI services. The developer has not yet run a formal first-user trial and plans to observe a freelancer using real receipts to measure which parts of capture, client tracking and export matter most.", "body_md": "*This is a submission for the [Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle](https://dev.to/challenges/hacktoberfest-week2-2026-10-12).*\n\nFreelancers are constantly collecting receipts from email, camera rolls, and wallets. By the time tax season arrives, they have to remember what each purchase was, which client it belonged to, and whether it was already recorded.\n\nI built **PocketLedger**, a private, local-first expense tracker for freelancers.\n\nPocketLedger lets users upload a receipt image or paste receipt text. Local AI extracts the merchant, date, amount, currency, category, and description. Before anything is saved, the user can review and edit every field, assign a client or project, and mark the expense as business deductible.\n\nThe app also includes:\n\nPocketLedger is designed for independent designers, developers, photographers, consultants, and other solo business owners who want a simpler alternative to heavyweight accounting software and cloud-based receipt tools.\n\nThe product idea is a one-time paid desktop setup with optional onboarding and support. My next step is to test the workflow with a real freelancer and learn which parts of receipt capture, client tracking, and export are most valuable.\n\nPocketLedger runs locally at:\n\nThe demo flow:\n\nBecause PocketLedger is designed around privacy, it is intentionally a local application rather than a hosted demo.\n\nGitHub repository:\n\n[https://github.com/SaikatDash/sideHustlers](https://github.com/SaikatDash/sideHustlers)\n\nPocketLedger is built with Python's standard library, SQLite, HTML, CSS, and vanilla JavaScript.\n\nFor receipt understanding, I used **Qwen2.5-VL 3B** through **Ollama**. The application sends the receipt text or image to the local Ollama installation with a structured JSON schema. The model returns a draft containing fields such as:\n\nThe draft is displayed in an editable form so that the user remains in control. An expense is not added to the ledger until the user explicitly saves it.\n\nThe app does not require a Python package installation. Once Python, Ollama, and the vision model are installed, PocketLedger can run locally and continue working without a hosted AI API.\n\nReceipt images are processed in memory and discarded after extraction. Only the fields approved by the user are saved to SQLite.\n\nReceipts contain sensitive information about spending habits, vendors, dates, and sometimes addresses or payment details. Sending every receipt to a cloud AI service creates privacy concerns and may introduce an ongoing cost for every scan.\n\nUsing an open-weight model locally makes PocketLedger possible without requiring users to upload their financial documents:\n\nOpen innovation also gives users more control over the technology behind their workflow. They are not locked into one hosted provider, pricing model, or opaque extraction system.\n\nThe trade-off is that users need enough local storage and hardware to run the model, and AI-generated results still need to be reviewed. That trade-off is acceptable for a privacy-focused tool where the user approves every expense before it is recorded.\n\nI have not yet completed a formal first-user trial. The next validation step is to watch a freelancer use PocketLedger with real receipts and measure:\n\nFuture improvements could include:\n\nPocketLedger is a small experiment in making everyday bookkeeping more private, understandable, and manageable for solo freelancers.", "url": "https://wpnews.pro/news/pocketledger-a-private-ai-expense-tracker-for-freelancers", "canonical_source": "https://dev.to/saikatdash/pocketledger-a-private-ai-expense-tracker-for-freelancers-4704", "published_at": "2026-10-18 07:04:39+00:00", "updated_at": "2026-10-18 07:14:50.759628+00:00", "lang": "en", "topics": ["artificial-intelligence", "ai-tools", "computer-vision", "ai-products", "large-language-models"], "entities": ["PocketLedger", "Qwen2.5-VL 3B", "Ollama", "SQLite", "GitHub", "SaikatDash"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/pocketledger-a-private-ai-expense-tracker-for-freelancers", "markdown": "https://wpnews.pro/news/pocketledger-a-private-ai-expense-tracker-for-freelancers.md", "text": "https://wpnews.pro/news/pocketledger-a-private-ai-expense-tracker-for-freelancers.txt", "jsonld": "https://wpnews.pro/news/pocketledger-a-private-ai-expense-tracker-for-freelancers.jsonld"}}