SmartSplit is a desktop app for splitting shared expenses among friends. It tracks groups, events, and expenses, and calculates who owes or should receive money so the total cost is split evenly.
- Manage multiple groups and members
- Create events per group
- Record expenses per event
- View settlement totals per event
- Create a MySQL database (default:
smartsplit). - Copy
config.example.jsontoconfig.jsonand update credentials, or set environment variables:SMARTSPLIT_DB_HOSTSMARTSPLIT_DB_PORTSMARTSPLIT_DB_USERSMARTSPLIT_DB_PASSWORDSMARTSPLIT_DB_NAME
- Install dependencies:
python -m pip install -r requirements.txt
- Run the app:
python src/main.py
The schema is created automatically on startup. If you want to inspect it,
see sql/schema.sql.
Run the unit tests with:
python -m unittest discover -s tests