Export Splitwise
A simple web tool to export your Splitwise transaction data as a JSON file.
Features
- 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.
Demo
Visit the live demo (if hosted) or run the app locally to see the UI.
Getting Started
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.txtRunning the Server
uvicorn main:app --reloadThe server will start on http://127.0.0.1:8000. Open http://127.0.0.1:8000 in your browser to use the UI.
Usage
- 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.
Project Structure
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
Contributing
Contributions are welcome! Feel free to open issues or submit pull requests.
License
This project is licensed under the MIT License – see the LICENSE file for details.
Acknowledgements
- 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.