← Back to projects
SpendLens - Personal Finance & Receipt Processing App
Plain-English summary: A private full-stack finance app for receipt uploads, OCR-assisted extraction, per-user records, categorization, and spending visibility.
Executive summary
Built a private finance application for turning receipt uploads and recurring spending data into structured, searchable records.
Next.js
React
TypeScript
Auth.js
PostgreSQL
Docker
OCR
Technical Architecture
Problem
- Manual receipt tracking created weak traceability and inconsistent categorization.
- Receipt data needed per-user separation and controlled upload behavior.
- OCR extraction had to remain replaceable because provider quality and cost can change.
What I built
- Implemented protected app routes, credential-based authentication, receipt upload flows, and PostgreSQL-backed records.
- Designed provider boundaries for OCR-assisted extraction so OpenAI Vision, Google Vision, and local OCR paths can evolve independently.
- Packaged the application for Docker-based deployment while keeping credentials outside tracked files.
My role
- I handled full-stack implementation across UI, API routes, auth, storage, OCR integration, and deployment structure.
- I modeled receipt, category, subscription, audit, and rule data around practical finance workflows.
- I kept private finance data, host details, and credentials out of public documentation.
Constraints
- This is a private/personal finance system, not a public SaaS product.
- Public pages must not reveal the active hostname, credential paths, private records, or deployment secrets.
- No external-user, revenue, or measured time-saving claims are made without separate proof.
Outcomes
- A practical personal finance workflow with structured receipt records and safer document-processing boundaries.
- A clearer architecture for evolving OCR providers without rewriting the finance application.
- A deployable full-stack project that demonstrates secure handling of private operational data.
Architecture decisions
- Private-by-design document processing.
- Per-user finance records and audit-oriented storage.
- Provider-isolated OCR architecture for maintainability.
Public evidence
The public record covers the full-stack architecture, authentication, storage, OCR-provider boundary, and Docker packaging. The application and records are private.
Proof limits
No public hostname, finance record, receipt, credential path, user count, revenue, or measured time saving is published. This is not presented as a public SaaS product.
Related work
Daily Edge automation · All projects