Splitr is a smart, AI-powered expense-splitting app built with Next.js, Tailwind CSS, Convex, and Clerk. It transforms the way groups manage shared costs by enabling real-time balance tracking, and intelligent suggestions — all enhanced by Gemini AI. Whether you're splitting bills or managing trip expenses, Splitr ensures fairness, and clarity.
- 💸 Add & Split Expenses – Quickly add expenses and split them evenly or unevenly among group members.
- 👥 Group Management – Create groups for trips, roommates, or events and manage shared bills effortlessly.
- 🔐 Secure Authentication – User sign-up and login powered by Clerk for a seamless and secure experience.
- ⚡ Real-time Sync – Powered by Convex, all updates reflect instantly across all users' devices.
- 🎨 Responsive UI – Clean and modern interface built with React.js, Tailwind CSS and Shadcn UI.
- 📊 Expense Summary – View clear, auto-updated balances for who owes whom.
- 🔄 Settle Up – Track settlements and reset group balances after payments.
- Frontend: Next.js, Javascript, Tailwind CSS, ShadCN UI
- Backend: Convex
- Authentication: Clerk
- Workflow Automation: Inngest
- AI Integration: Gemini AI
Prerequisites
- Node.js ≥ 18
- npm or yarn
- Convex CLI
npm install -g convex
- Live Demo: Check out the live version of Splitr to see its features in action.
- Clone the repository
git clone https://github.com/your-username/splitr.git
cd splitr- Install dependencies
npm install- Set up environment variables
Create a .env file in the root directory and add the required environment variables:
CONVEX_DEPLOYMENT=
NEXT_PUBLIC_CONVEX_URL=
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=
CLERK_SECRET_KEY=
NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in
NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up
CLERK_JWT_ISSUER_DOMAIN=
RESEND_API_KEY=
GEMINI_API_KEY=Replace the values with your actual Clerk and Convex credentials.
- Run the development server
npm run devOpen http://localhost:3000 in your browser to see the app running.
- Clerk for authentication
- Convex for backend services
- ShadCN for UI components
- Tailwind CSS for styling
- Inngest for workflow automation
We love contributions from the community! Whether it's a bug report, a new feature, or a documentation improvement, we appreciate your help.
How to Contribute
- Fork the repository and create a new branch for your changes.
- Make your changes and ensure everything is working as expected.
- Submit a pull request with a clear description of your changes.
This project is licensed under the MIT License - see the License file for details.
A short and simple permissive license with conditions only requiring preservation of copyright and license notices. Licensed works, modifications, and larger works may be distributed under different terms and without source code.
- Commercial use
- Modification
- Distribution
- Private use
Limitations
- Liability
- Warranty