← All templates

Personal Finance Tracker

Finance · React + Node (Express) · 18 @molecule/* packages

Mint-like finance tracking with accounts, transactions, budgets, and savings goals — including a built-in subscription tier (Free / Pro / Team) backed by Stripe

Open in Molecule

What is inside

  • auth
  • import-export
  • reports
  • ai-classification
  • subscriptions

Screens (15)

  • Dashboard / (signed in)
  • Transactions /transactions (signed in)
  • Accounts /accounts (signed in)
  • Budgets /budgets (signed in)
  • Goals /goals (signed in)
  • Reports /reports (signed in)
  • Login /login
  • Settings /settings (signed in)
  • AddTransaction /transactions/new (signed in)
  • TransactionDetail /transactions/:id (signed in)
  • AccountDetail /accounts/:id (signed in)
  • Categories /categories (signed in)
  • Signup /signup
  • ForgotPassword /forgot-password
  • ResetPassword /reset-password

Data model (6 tables)

  • accounts — id, user_id, name, type, institution, account_number_encrypted, currency, balance, …
  • budgets — id, user_id, category_id, name, amount, period, start_date, end_date, …
  • categories — id, user_id, name, type, color, icon, created_at, parent_id
  • devices — id, createdAt, updatedAt, userId, name, pushPlatform, pushSubscription, hasPushSubscription
  • goals — id, user_id, name, target_amount, current_amount, deadline, account_id, created_at, …
  • transactions — id, user_id, account_id, amount, type, description, date, category_id, …

API (8 handlers)

  • accounts api/src/handlers/accounts.ts
  • budgets api/src/handlers/budgets.ts
  • categories api/src/handlers/categories.ts
  • data-export api/src/handlers/data-export.ts
  • goals api/src/handlers/goals.ts
  • notifications api/src/handlers/notifications.ts
  • reports api/src/handlers/reports.ts
  • transactions api/src/handlers/transactions.ts

Subscription tiers

free / pro / team — gated by: maxAccounts, maxTransactionsPerMonth, maxBudgets, maxGoals, canImport, canExport, aiCategorization, advancedReports, maxCurrencies, retentionDays

Built from 18 @molecule/* packages

Browse all @molecule/* packages →

Required secrets

  • DATABASE_URL PostgreSQL connection string
  • ENCRYPTION_KEY AES encryption key for sensitive financial data

The @molecule/* packages are Apache-2.0. The app you build from this template is yours to export and self-host. Licensing