DEV Community

Cover image for ProofPocket AI: Smart Document & Payment Proof Manager
Jay Butle
Jay Butle

Posted on

ProofPocket AI: Smart Document & Payment Proof Manager

Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle Submission đź’¸

This is a submission for the Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle

What I Built

Freelancers can finish a project and still lose time sorting the paperwork around it: invoices, receipts, due dates, and the awkward question of who still owes what. I built ProofPocket, a local-first paperwork workspace that turns PDFs and images into reviewable business records.

ProofPocket extracts document text, asks a local Gemma model to suggest fields, and shows those suggestions for correction before anything is saved. Approved invoices feed into client balances, overdue tracking, and reports. The app calculates money and due status in code; the model does not approve invoices or decide financial totals.

The intended customer is a freelancer, consultant, or small service studio with client paperwork spread across folders. A paid desktop product, setup help, or team workflow could be useful to them. That is a business hypothesis: I have not yet tested willingness to pay with real customers.

Demo

Live preview: [https://pocketproof-psi.vercel.app/.]

The hosted preview is a static, read-only tour with fictional sample records. It does not accept uploads or connect to an AI model. To try the full local workflow, follow the macOS setup guide and demo walkthrough.

Code

ProofPocket on GitHub · README and architecture

How I Built It

The interface uses React, TypeScript, and Vite. A local Express API stores approved records and document metadata in SQLite. PDF text is parsed with pdf-parse; images go through Tesseract.js OCR. The API sends bounded extracted text to Gemma through Ollama on the same device, validates the suggested fields with Zod, and presents them for human review.

The app defaults to Gemma 3 1B through Ollama. I manually smoke-tested a synthetic invoice with Gemma 3 4B and checked the suggested fields against the source. That verified the local extraction adapter, but the full browser upload-to-review flow still needs a recorded walkthrough. Model output can be wrong, so suggestions remain editable and are not treated as verified accounting data.

The rest of the workflow includes deterministic invoice and client balances, overdue calculations, a record-grounded assistant, and local CSV/JSON exports. See third-party notices and licenses.

Why Does Open Innovation Matter?

Invoices contain names, contact details, rates, and payment terms. With local inference, the document text goes to Ollama on the user's own device instead of a hosted model API, while approved records and source files stay in local storage. A freelancer can avoid per-document AI charges and can choose a compatible model through Ollama.

That control has trade-offs: users provide the hardware, model setup takes effort, and smaller models can miss fields. The app validates suggestions and requires human review. The local database is not encrypted by ProofPocket, so this is an early productivity tool, not accounting or tax software.

My Agent Session

Preparing ProofPocket's Vercel Demo and Challenge Submission
You

Deploy ProofPocket to Vercel. Its local version stores data in SQLite and files and uses local Ollama; prepare a read-only sample-data demo.

Agent

I separated the hosted preview from the local app. The preview uses fictional records, has no API or upload path, and is configured as a static Vercel build.

Agent
Agent
You

Give all data to fill the Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle template.

Agent

Prepared a DEV submission describing Gemma through Ollama, local document processing, human review, deterministic financial calculations, business hypothesis, and the read-only sample demo. Kept the deployment URL explicit as a placeholder and did not invent first-user feedback.

You

Give My Agent Session and My First User.

My First User

I don't have an external first user yet, so I can't report user feedback or payment. My next step is to ask a freelancer to try ProofPocket and learn which part of the paperwork workflow would save them the most time.

Top comments (0)