Add README
This commit is contained in:
@@ -0,0 +1,91 @@
|
|||||||
|
# ynabmunger
|
||||||
|
|
||||||
|
A CLI tool for importing bank exports into YNAB.
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
You can download binaries from the [Releases page](https://git.shee.sh/james/ynabmunger/releases).
|
||||||
|
|
||||||
|
To build locally, you need Rust installed and you can either:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cargo install --git https://git.shee.sh/james/ynabmunger
|
||||||
|
```
|
||||||
|
|
||||||
|
or clone the repo locally and run:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cargo install --path .
|
||||||
|
```
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
All commands that interact with YNAB require your API token, available from [YNAB developer settings](https://app.ynab.com/settings/developer). Set it via the `--token` flag or the `YNAB_API_TOKEN` environment variable.
|
||||||
|
|
||||||
|
### Commands
|
||||||
|
|
||||||
|
#### `plans`
|
||||||
|
|
||||||
|
List available YNAB budgets:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ynabmunger plans --token YOUR_TOKEN
|
||||||
|
```
|
||||||
|
|
||||||
|
#### `accounts`
|
||||||
|
|
||||||
|
List accounts in a budget:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ynabmunger accounts --token YOUR_TOKEN --plan "My Budget"
|
||||||
|
```
|
||||||
|
|
||||||
|
You can reference a budget by name (`--plan`) or ID (`--plan-id`).
|
||||||
|
|
||||||
|
#### `transactions`
|
||||||
|
|
||||||
|
List recent transactions (last 30 days):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ynabmunger transactions --token YOUR_TOKEN --plan "My Budget"
|
||||||
|
```
|
||||||
|
|
||||||
|
Filter by account with `--account` or `--account-id`.
|
||||||
|
|
||||||
|
#### `convert`
|
||||||
|
|
||||||
|
Convert a bank export to YNAB-compatible CSV for manual import:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ynabmunger convert --format bulder bank_export.csv > ynab_import.csv
|
||||||
|
```
|
||||||
|
|
||||||
|
Reads from stdin if no input files are given:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cat bank_export.csv | ynabmunger convert --format bulder > ynab_import.csv
|
||||||
|
```
|
||||||
|
|
||||||
|
#### `import`
|
||||||
|
|
||||||
|
Import a bank export directly into a YNAB account:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ynabmunger import --token YOUR_TOKEN \
|
||||||
|
--plan "My Budget" \
|
||||||
|
--account "Checking" \
|
||||||
|
--format bulder \
|
||||||
|
bank_export.csv
|
||||||
|
```
|
||||||
|
|
||||||
|
## Bank Formats
|
||||||
|
|
||||||
|
Currently supported formats:
|
||||||
|
|
||||||
|
| Format | Description |
|
||||||
|
|--------|-------------|
|
||||||
|
| `bulder` | Bulder bank semicolon-delimited export |
|
||||||
|
|
||||||
|
### Adding New Formats
|
||||||
|
|
||||||
|
Add a new variant to the `BankFormat` enum in `src/csv.rs` and implement the reader and transform methods.
|
||||||
Reference in New Issue
Block a user