A simple web tool to export your Splitwise transaction data as a JSON file.
Easy API Key Input – Just paste your Splitwise API key.
One‑click Export – Downloads a timestamped JSON file containing all your expenses.
Responsive Design – Built with Tailwind CSS and a custom dark/light theme.
No Data Storage – Your API key and data never leave the browser.
Visit the live demo (if hosted) or run the app locally to see the UI.
Prerequisites#
Python 3.10+ (for the backend API)
pipfor installing dependencies
Installation#
# Clone the repository
git clone https://github.com/tashifkhan/export-splitwise.git
cd export-splitwise
# Create a virtual environment (optional but recommended)
python -m venv .venv
source .venv/bin/activate # on macOS/Linux
# .venv\Scripts\activate # on Windows
# Install dependencies
pip install -r requirements.txt
Running the Server#
uvicorn main:app --reload
The server will start on http://127.0.0.1:8000. Open http://127.0.0.1:8000 in your browser to use the UI.
Generate an API key in your Splitwise account:
Go to Apps → New App.
Fill in the required fields (name, description, homepage URL).
Accept the terms and click Register and get API key.
Copy the generated key.
Paste the API key into the input field on the page.
Click Download Data.
A file named
splitwise_data_YYYY-MM-DD_HH-MM-SS.jsonwill be downloaded.
export-splitwise/
├─ html.py # Generates the HTML page with Tailwind styling
├─ main.py # FastAPI backend exposing the /api/download endpoint
├─ requirements.txt # Python dependencies
└─ README.md # This file
Contributions are welcome! Feel free to open issues or submit pull requests.
This project is licensed under the MIT License – see the LICENSE file for details.
Tailwind CSS – utility‑first CSS framework.
FastAPI – modern, fast (high‑performance) web framework for building APIs with Python.
Splitwise – for providing the API used to fetch transaction data.