All 60 Dependencies

Every package SplitPro depends on, ranked by repo health score.

SplitPro is a self-hosted open source alternative to Splitwise, built for individuals and groups who want full ownership of their financial data. It covers the entire expense-management workflow: add expenses with multiple split methods, track per-person and per-group balances, settle debts, and receive push notifications when new charges arrive.

Version 2.0 introduced a fundamental architectural shift: balances are now computed on the fly from PostgreSQL views rather than maintained in a separate table. This eliminates an entire class of stale-balance bugs and unlocks recurring expenses powered by pg_cron. Multi-currency conversion with pluggable rate providers and Plaid bank-transaction import round out the feature set for households with complex financial lives.

The stack is entirely TypeScript — Next.js 15 on the frontend, tRPC for type-safe API communication, Prisma with PostgreSQL for data persistence, and Serwist (Workbox) for PWA and offline capability. All monetary values are stored as BigInt to prevent floating-point rounding errors, and leftover pennies from uneven splits are distributed deterministically across participants.

Deployment is designed for self-hosters: a Docker Compose file with the custom ossapps/postgres image (which bundles the pg_cron extension) is the recommended path, and the Dockerfile produces a lean Alpine-based production image. Authentication relies on NextAuth with email magic links, Google OAuth, and generic OIDC support for Authentik, Keycloak, and GitLab, making it easy to integrate with existing identity infrastructure.

42 clsx ^2.1.0 44 cmdk ^1.1.1 44 next-themes ^0.4.6 45 boring-avatars ^1.10.1 outdated 48 Vaul ^1.1.2 50 @t3-oss/env-core ^0.13.8 50 superjson ^2.2.1 51 heroicons ^2.1.1 52 ts-node ^10.9.2 53 react-plaid-link 4.1.1 outdated 58 jiti ^2.5.1 59 NextAuth.js ^1.0.7 outdated 59 NextAuth.js ^4.24.14 61 Sonner ^1.4.0 outdated 62 prettier-plugin-tailwindcss ^0.6.12 outdated 63 i18next-browser-languageDetector ^8.2.1 67 Serwist ^9.2.1 67 prisma-cli ^6.19.3 outdated 70 web-push ^3.6.7 72 i18next-http-backend ^3.0.6 outdated 72 plaid-node ^38.1.0 outdated 73 input-otp ^1.2.3 74 TypeScript Native Preview 7.0.0-dev.20251016.1 77 react-day-picker ^9.7.0 outdated 78 Radix UI ^1.4.2 81 Zustand ^4.5.0 outdated 81 nanoid ^5.0.6 outdated 82 class-variance-authority ^0.7.0 82 date-fns ^3.3.1 outdated 82 react-i18next ^15.5.3 outdated 83 @hookform/resolvers ^3.3.4 outdated 85 cron-parser ^4.9.0 outdated 85 tsx ^4.7.1 86 lint-staged ^16.4.0 outdated 89 Nodemailer ^9.0.1 outdated 89 tailwind-merge ^2.2.0 outdated 90 Oxlint 1.57.0 outdated 90 Tailwind CSS ^4.1.10 90 Tailwind CSS ^4.1.10 90 cRonstrue ^3.3.0 90 i18next ^25.10.10 outdated 90 sharp ^0.34.5 outdated 90 tRPC Server ^11.2.0 90 tRPC Server ^11.2.0 90 tRPC Server ^11.2.0 90 tRPC Server ^11.2.0 91 Faker 10.1.0 outdated 91 Prisma Client ^6.16.2 outdated 91 Zod ^3.22.4 outdated 91 prettier ^3.2.4 92 React Hook Form ^7.50.1 92 TanStack Query ^5.79.2 92 lucide-react ^0.544.0 outdated 92 postcss ^8.5.14 94 jest 30.3.0 outdated 94 jest 30.3.0 outdated 95 TypeScript ~5.7.2 outdated 96 Next.js 15.5.18 outdated 98 React 19.2.1 outdated 98 React DOM 19.2.1 outdated

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers