Simplifying group expense management is easy and fair among friends and family with advanced tracking, splitting, and settlement features.
Splito is an open-source expense tracking and splitting application inspired by Splitwise. It simplifies the management of shared expenses 💰, making it easy for users to track 📈, split, and settle costs among friends, family, or group members 👫.
Whether it's a group trip 🌍, shared household bills 🏠, or any other collective expense, Splito ensures fairness and transparency in cost-sharing with its user-friendly interface and robust features. Users can effortlessly manage debts and settle up 💳 payments within their groups 👥.
Splito is currently in active development 🚧, with plans to incorporate additional features shortly.
- Group Management: Create and manage multiple expense groups 👥 for different purposes (e.g., games, trips, shared bills).
- Expense Tracking: Add expenses 💰 with details such as description, amount, payer, and date.
- Expense Splitting: Split expenses equally⚖️ or based on customizable ratios among group members.
- Payment Settlement: Easily settle 💳 the payments with other group members to clear outstanding balances.
How to Use Splito
- Create a Group ➕:
- Start by creating a new expense group for your specific need (e.g., a trip to Goa, monthly utilities).
- Add Members 👥:
- Invite friends, family, or colleagues to join the group.
- Track Expenses 📈:
- Add expenses as they occur, detailing the amount, who paid, and any relevant notes.
- Split Costs⚖️:
- It uses flexible splitting options to divide expenses fairly among group members.
- Payment Settlements 💳:
- Settle up the payment with any other group member as any payment occurs.
Group List | Group Expense List | Invite Friends/Group Members |
---|---|---|
Expense Add/Edit | Expense Split Option | Expense Detail |
---|---|---|
Group Balance | Group Summary | Activity Log History |
---|---|---|
Payment List | Payment Add/Edit | Payment Detail |
---|---|---|
Make sure you have the latest stable version of Xcode installed. Then, you can clone this repository to Xcode.
To run Splito locally, you'll need:
- iOS (version 16.4 or higher)
- Xcode (version 15.4 or higher)
Firebase Setup
To enable Firebase services, you will need to create a new project in the Firebase Console. Use the app bundle ID value specified in the project setting in Xcode. Once the project is created, you will need to add the GoogleService-Info.plist file to the project. For more information, refer to the Firebase documentation.
Splito uses the following Firebase services, Make sure you enable them in your Firebase project:
- Authentication (Phone, Google and Apple login)
- Firestore (To store user data)
Splito utilizes the latest iOS technologies and adheres to industry best practices. Below is the current tech stack used in the development process:
- MVVM Architecture
- SwiftUI
- Concurrency
- Combine + Swift
- Swinject for DI
- SwiftLint for Lint
- Cloud Functions
- Firebase Firestore
- Firebase Authentication
- CocoaLumberjack for Logging
The Canopas team enthusiastically welcomes contributions and project participation! There are a bunch of things you can do if you want to contribute! The Contributor Guide has all the information you need for everything from reporting bugs to contributing entire new features. Please don't hesitate to jump in if you'd like to, or even ask us questions if something isn't clear.
Splito is owned and maintained by the Canopas team. You can follow them on X at @canopassoftware for project updates and releases. If you are interested in building apps or designing products, please let us know. We'd love to hear from you!
Splito is licensed under the Apache License, Version 2.0.
Copyright 2024 Canopas Software LLP
Licensed under the Apache License, Version 2.0 (the "License");
You won't be using this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.