explaingit

pocketlens/pocketlens-app

Analysis updated 2026-07-26

2TypeScriptAudience · developerComplexity · 4/5Setup · hard

TLDR

A self-hosted personal finance app that connects to your banks via Plaid to track spending, budgets, and net worth. Your financial data stays private in your own database with no subscription fees or ads.

Mindmap

mindmap
  root((repo))
    What it does
      Bank syncing via Plaid
      Budgets and net worth
      Recurring charge detection
    Tech stack
      React and TypeScript
      Python sync service
      Supabase Postgres
    Use cases
      Personal finance tracking
      Multi-user shared hosting
      Data export to CSV
    Deployment
      Docker Compose
      Render hosting
      Static site hosting
    Privacy
      Self-hosted database
      Row-level security
      No ads or fees

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Track your personal spending, budgets, and net worth without paying a subscription.

USE CASE 2

Host a finance app for your family where each person only sees their own data.

USE CASE 3

Automatically import bank and brokerage transactions using Plaid.

USE CASE 4

Export all your financial data to CSV at any time.

What is it built with?

TypeScriptReactPythonSupabasePostgresDocker

How does it compare?

pocketlens/pocketlens-app4ssh1/mine-sweeperachawla19/intuitcode-extension
Stars222
LanguageTypeScriptTypeScriptTypeScript
Last pushed2026-01-31
MaintenanceMaintained
Setup difficultyhardmoderatemoderate
Complexity4/52/54/5
Audiencedevelopervibe coderdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires both a Supabase project (self-hosted or cloud) and a Plaid account for bank data connections.

In plain English

PocketLens is a personal finance app you host yourself. It connects to your bank and brokerage accounts through Plaid, a service that links financial institutions to apps, and automatically pulls in transactions, balances, and investment holdings. On top of that data, it provides budgets, net worth tracking, spending reports, and detection of recurring charges. Your financial data stays in your own database with no subscription fees and no ads. The app supports multiple users on a single installation. Each person only sees their own data, and they can either use their own Plaid account or share the server's credentials. Syncing happens automatically through webhooks for real-time updates, plus a scheduled background job that catches anything missed. You can export your data to CSV at any time. A live demo runs on the home page when you are logged out, using made-up data, so you can explore the full app before creating an account. The project has two main pieces. The web app is built with React and TypeScript, handling the interface you interact with in the browser. A separate Python sync service handles communication with Plaid and writes data to the database. Both components connect to Supabase, which provides a Postgres database, user authentication, and row-level security that keeps each user's data private. The web app reads and writes to the database directly through Supabase's API, only contacting the sync service when you need to link a new bank or manually trigger a sync. You need a Supabase project to run PocketLens. You can either self-host Supabase with Docker on your own server, keeping everything on your machine, or use Supabase's hosted service. A plain Postgres database will not work because the app depends on Supabase's specific components for login and data access. You also need a Plaid account for bank data, which you can configure once for the whole server or let each user add their own. Deployment options include local development with Docker, production setup with Docker Compose, or deploying to Render using the included configuration file. The web app is a static build, so it can also be hosted on any static hosting service like Netlify, Cloudflare Pages, or S3. The full README is longer than what was shown.

Copy-paste prompts

Prompt 1
Help me set up PocketLens with Supabase and Plaid. I want to self-host Supabase with Docker and configure Plaid for bank connections. Walk me through the steps.
Prompt 2
I cloned PocketLens and want to deploy it to Render. Help me use the included configuration file to get the web app and Python sync service running.
Prompt 3
I have PocketLens running locally. How do I add multiple users so each person can link their own Plaid account and only see their own financial data?
Prompt 4
Help me host the PocketLens web app as a static build on Cloudflare Pages while running the Python sync service separately. What environment variables do I need?

Frequently asked questions

What is pocketlens-app?

A self-hosted personal finance app that connects to your banks via Plaid to track spending, budgets, and net worth. Your financial data stays private in your own database with no subscription fees or ads.

What language is pocketlens-app written in?

Mainly TypeScript. The stack also includes TypeScript, React, Python.

How hard is pocketlens-app to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is pocketlens-app for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.