Open Net Worth
Open Net Worth is an open-source personal AI wealth assistant you run yourself: one ledger for your whole financial life, worked by an AI agent you control.
Registra ingresos y gastos en varias monedas, controla presupuestos y metas, y mira tu patrimonio real con la tasa del día.
Translation pending
FinanceTypeScript · PLpgSQLGitHub @Jose-SandOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Finanzas personales para quien cobra en una moneda y gasta en otra. Cuentas en su propia moneda, transferencias con la tasa real, presupuestos, metas y pagos recurrentes, con el patrimonio total convertido a tu moneda principal con la tasa del día.
apps/
web/ Next.js 16 (App Router) — landing, auth y la app completa
mobile/ Expo SDK 58 + Expo Router — app iOS/Android
packages/
shared/ Tipos, cálculos (resúmenes, presupuestos, metas, patrimonio),
formato de dinero, validación, acceso a datos y tokens de diseño
supabase/
migrations/ Esquema Postgres, RLS, triggers y cron de tasas
functions/ fx-sync: actualiza las tasas de cambio (open.er-api.com)
Web y móvil comparten toda la lógica de negocio a través de @caudal/shared, así que un cálculo se corrige una sola vez.
profiles, accounts, categories, transactions, budgets, goals, recurring, fx_rates.account_balances (security invoker) calcula el saldo de cada cuenta.post_recurring(id) crea el movimiento y avanza la próxima fecha.pg_cron llama a la función fx-sync cada 6 horas.Requisitos: Node 20.9+ y pnpm 10.
pnpm install
pnpm test # pruebas de la lógica compartida
pnpm dev:web # http://localhost:3000
pnpm dev:mobile # Expo; abre con Expo Go o un dev build
Variables de entorno (las llaves son publicables, ya vienen en los .env.example):
apps/web/.env.local → NEXT_PUBLIC_SUPABASE_URL, NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEYapps/mobile/.env → EXPO_PUBLIC_SUPABASE_URL, EXPO_PUBLIC_SUPABASE_PUBLISHABLE_KEYcp apps/web/.env.example apps/web/.env.local
cp apps/mobile/.env.example apps/mobile/.env
apps/web. Define las dos variables NEXT_PUBLIC_*.supabase/migrations ya están aplicadas al proyecto caudal. Para otro proyecto: supabase db push.npx eas-cli@latest build -p android / -p ios desde apps/mobile.En Authentication → URL Configuration pon como Site URL el dominio de producción de la web y agrega https://<dominio>/auth/callback a Redirect URLs, para que los enlaces de confirmación y recuperación lleguen a la app.