Metadata-Version: 2.3
Name: lunchsimple
Version: 0.3.2
Summary: Sync Wealthsimple with Lunch Money.
Project-URL: Homepage, https://sr.ht/~colbyhub/lunchsimple/
Project-URL: Issues, https://todo.sr.ht/~colbyhub/lunchsimple
Author-email: Colby Hubscher <colby@colbyhub.com>
License-Expression: MIT
License-File: LICENSE
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.12
Requires-Dist: keyring>=25.6.0
Requires-Dist: lunchable>=1.4.2
Requires-Dist: pre-commit>=4.0.1
Requires-Dist: ruff>=0.8.6
Requires-Dist: twine>=6.0.1
Requires-Dist: typer>=0.15.1
Requires-Dist: ws-api>=0.34.0
Description-Content-Type: text/markdown

# Lunchsimple

Lunchsimple syncs your Wealthsimple activity with your Lunch Money budget.

Note: this project uses unofficial Wealthsimple APIs, which may be revoked at any time.

## Getting Started

### Prerequisites

To install Lunchsimple, you'll need:

- at least Python 3.12
- `pipx` (recommended)
- a functioning and accessible system keyring
  - should be true for most people, [read more](https://pypi.org/project/keyring/) about keyring access if you have issues

### Installing

You can install Lunchsimple from your terminal using `pipx` with:

```commandline
pipx install lunchsimple
```

Alternatively, without `pipx` you can try to use plain 'ol `pip`:

```commandline
pip install lunchsimple
```

However, doing so may require you to run as `sudo` which isn't recommended.

### Logging In

You'll need to first log in with your Wealthsimple credentials:

```commandline
lunchsimple login
```

Your login information is then stored locally on your system's keyring.

### Configuring

You must tell Lunchsimple which Wealthsimple accounts belong to which Lunch Money assets.

First, go to the [Accounts page](https://my.lunchmoney.app/accounts) in Lunch Money and create a new account for each Wealthsimple account you want to sync with.

Then, go to the [Developers page](https://my.lunchmoney.app/developers) in Lunch Money and generate an Access Token by clicking **Request New Access Token**.

Once you have the token, run the following:

```commandline
lunchsimple configure --access-token "your-access-token"
```

You can re-run `lunchsimple configure` anytime to re-configure (or switch budgets if using a test budget).

### Syncing

After logging in and configuring, you can finally push Wealthsimple activity into Lunch Money with:

```commandline
lunchsimple sync
```

By default, syncing starts from the beginning of the current month.

You can also pass a date to start syncing from:

```commandline
lunchsimple sync --start-date "2024-12-15"
```

## Contributing

Know Python? Want to improve Lunchsimple? Submit patches and let's chat.

## Credits

This project wouldn't be here without these awesome packages:

- WS-API <https://github.com/gboudreau/ws-api-python>
- Lunchable <https://github.com/juftin/lunchable>
- Typer <https://github.com/fastapi/typer>
