Metadata-Version: 2.4
Name: splitty-cli
Version: 0.1.0a2
Summary: Splitting group expenses made it fun on your terminal
Project-URL: Homepage, https://github.com/0xlukem/splitty-cli
Author: Lucas Malizia
License: MIT License
        
        Copyright (c) 2026 Luke
        
        Permission is hereby granted, free of charge, to any person obtaining a copy
        of this software and associated documentation files (the "Software"), to deal
        in the Software without restriction, including without limitation the rights
        to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
        copies of the Software, and to permit persons to whom the Software is
        furnished to do so, subject to the following conditions:
        
        The above copyright notice and this permission notice shall be included in all
        copies or substantial portions of the Software.
        
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
        AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
        LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
        OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
        SOFTWARE.
License-File: LICENSE
Keywords: cli,expenses,group-expenses,rich,terminal,typer
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Office/Business :: Financial :: Accounting
Classifier: Topic :: Utilities
Requires-Python: >=3.11
Requires-Dist: plotext<6.0,>=5.3
Requires-Dist: pydantic<3.0,>=2.7
Requires-Dist: rich<14.0,>=13.7
Requires-Dist: typer<1.0,>=0.12
Provides-Extra: dev
Requires-Dist: build<2.0,>=1.2; extra == 'dev'
Requires-Dist: pytest<9.0,>=8.2; extra == 'dev'
Requires-Dist: twine<7.0,>=6.1; extra == 'dev'
Description-Content-Type: text/markdown

# splitty-cli

`splitty-cli` is a Python terminal application for splitting shared expenses with a polished interactive flow, colorful terminal dashboards, and clean settlement suggestions.

## Features

- guided step-by-step CLI powered by Typer
- styled prompts, tables, panels, and dashboards with Rich
- equal split calculations with cent-accurate rounding
- minimized settlement transfers between debtors and creditors
- expense analytics with terminal charts
- optional JSON export for every completed session
- modular business logic with Pydantic validation and pytest coverage

## Installation

```bash
pip install splitty-cli
```

## Quickstart

Run the interactive app:

```bash
splitty-cli
```

Follow the prompts to:

1. name the event
2. add the participants
3. enter each expense
4. review balances, settlements, and charts
5. optionally export the session to JSON

## JSON export

Write the final report to a JSON file:

```bash
splitty-cli --export-json reports/weekend-trip.json
```

In the interactive flow, JSON backups are stored by default in `~/.splitty-cli/backups/` and use the pattern `<event-name>-YYYY-MM-DD.json`.
If you confirm the export at the end of the session, the CLI only asks for the backup file name and keeps the file inside that folder.

The exported report includes:

- event summary
- participant balances
- settlement transfers
- analytics insights
- expense and payer breakdown data

## Current limitations

- equal split only across all participants
- no CSV export yet
- better graphics
- UI animations
