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 45 next-themes ^0.4.6 46 boring-avatars ^1.10.1 outdated 48 Vaul ^1.1.2 50 @t3-oss/env-core ^0.13.8 51 heroicons ^2.1.1 51 superjson ^2.2.1 52 ts-node ^10.9.2 56 i18next-browser-languageDetector ^8.2.1 58 Serwist ^9.2.1 58 jiti ^2.5.1 59 react-plaid-link 4.1.1 outdated 61 i18next-http-backend ^3.0.6 outdated 62 prettier-plugin-tailwindcss ^0.6.12 outdated 63 Sonner ^1.4.0 outdated 67 plaid-node ^38.1.0 outdated 67 prisma-cli ^6.19.3 outdated 69 react-day-picker ^9.7.0 outdated 72 NextAuth.js ^1.0.7 outdated 72 NextAuth.js ^4.24.14 74 Radix UI ^1.4.2 75 input-otp ^1.2.3 76 TypeScript Native Preview 7.0.0-dev.20251016.1 77 react-i18next ^15.5.3 outdated 78 Zustand ^4.5.0 outdated 78 date-fns ^3.3.1 outdated 79 web-push ^3.6.7 82 class-variance-authority ^0.7.0 82 i18next ^25.10.10 outdated 84 cRonstrue ^3.3.0 84 cron-parser ^4.9.0 outdated 85 @hookform/resolvers ^3.3.4 outdated 85 nanoid ^5.0.6 outdated 86 tailwind-merge ^2.2.0 outdated 88 tsx ^4.7.1 89 lint-staged ^16.4.0 outdated 90 Nodemailer ^9.0.1 outdated 90 Oxlint 1.57.0 outdated 90 Tailwind CSS ^4.1.10 90 Tailwind CSS ^4.1.10 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 prettier ^3.2.4 92 React Hook Form ^7.50.1 92 TanStack Query ^5.79.2 92 Zod ^3.22.4 outdated 92 lucide-react ^0.544.0 outdated 92 postcss ^8.5.14 95 jest 30.3.0 outdated 95 jest 30.3.0 outdated 96 Next.js 15.5.18 outdated 97 TypeScript ~5.7.2 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