Split smarter. Spend better.
Split AI is a modern, AI-powered web application designed to make bill splitting effortless, transparent, and smart.
Whether you're dining out with friends or managing shared expenses, Split AI helps you split, calculate, and send bills seamlessly — all in a beautiful, fast, and secure interface.
Check it out here! ➡️ Split Ai
| Category | Technology | Description |
|---|---|---|
| Frontend | Next.js | React-based framework for building performant and scalable UIs |
| Backend | Convex | Real-time backend for data storage, queries, and serverless functions |
| Automation | Inngest | For background jobs, async event handling, and workflows |
| Authentication | Clerk | Secure user authentication and management |
| Icons | Lucide React | Clean and modern icon set for UI consistency |
| Email Service | Resend | For sending transactional and notification emails |
| Validation | Zod | Schema validation and type-safe data parsing |
| Scheduler | Cron Jobs | Used to trigger scheduled jobs and cleanup tasks |
| UI Notifications | Sonner | Beautiful toast notifications for better UX |
| Loaders / Spinners | React Spinners | Smooth and minimal loading animations |
✅ AI-powered bill splitting – Automatically calculate who owes whom and how much.
✅ Real-time updates – Powered by Convex for live data sync.
✅ Secure authentication – Sign in with Clerk for seamless access.
✅ Automated email notifications – Powered by Resend and Inngest.
✅ Smart scheduling – Background jobs for periodic reminders and cleanup.
✅ Responsive UI – Built with Next.js and styled for all devices.
✅ Smooth UX – Sonner toasts and React Spinners for delightful interactions.
git clone https://github.com/aryangupta02092002/Split-Ai.git
cd Split-Ainpm installCreate a .env.local file in the root directory and add your credentials:
env
CONVEX_DEPLOYMENT=your_convex_url
NEXT_PUBLIC_CONVEX_URL=your_convex_url
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_key
CLERK_SECRET_KEY=your_clerk_secret
NEXT_PUBLIC_CLERK_SIGN_IN_URL=sign_in
NEXT_PUBLIC_CLERK_SIGN_UP_URL=sign_up
CLERK_JWT_ISSUER_DOMAIN=your_clerk_jwt_domain
RESEND_API_KEY=your_resend_key
GEMINI_API_KEY=your_gemini_key
npm run dev (Visit the app at http://localhost:3000 🚀)
npx convex dev (For backend-convex development server)
npx inngest-cli@latest dev (For inngest server startup)
npx convex run seed:seedDatabase (For seed data)Split AI uses cron-scheduled jobs (via Convex and Inngest) for:
- Sending reminder emails
- Cleaning up expired sessions
- Running periodic data syncs
All transactional and reminder emails are powered by Resend and triggered via Inngest workflows.
Copy code
split-ai/
│
├── app/ # Next.js app router and page components
├── components/ # Reusable React UI components
├── convex/ # Convex backend functions & schema definitions
├── hooks/ # Custom React hooks for data fetching, session handling, and UI logic
├── lib/ # Helper functions and utilities
└── public/ # Static assets (images, icons, etc.)All forms and inputs are validated using Zod, ensuring strong type safety and secure data flow between frontend and backend.
- 🤖 Add AI-driven expense suggestions
- 💬 Integration with WhatsApp for sending bills
- 📱 Mobile-first UI improvements
- 💼 Application Developer @ IBM India Pvt Ltd
- 📧 Connect on LinkedIn
- 🌐 GitHub
🪪 License This project is licensed under the MIT License – feel free to use and modify it.