2020-09-26 13:25:52 +00:00
|
|
|
BunyMuny
|
|
|
|
===
|
2020-09-26 13:28:11 +00:00
|
|
|
[![Build Status](https://drone.bune.city/api/badges/lynnesbian/BunyMuny/status.svg)](https://drone.bune.city/lynnesbian/BunyMuny)
|
2020-09-26 13:25:52 +00:00
|
|
|
|
|
|
|
BunyMuny parses the CSV output of various bank statement listings and converts it to something more human readable with nice visualisations.
|
|
|
|
|
|
|
|
## Building
|
|
|
|
```bash
|
|
|
|
git clone https://git.bune.city/lynnesbian/BunyMuny
|
|
|
|
cd BunyMuny
|
|
|
|
dotnet build
|
|
|
|
```
|
|
|
|
|
|
|
|
## The rules file
|
|
|
|
By default, BunyMuny checks for rules in `rules.json` in the current directory. An example rules file might look like this:
|
|
|
|
```json
|
|
|
|
[
|
|
|
|
{
|
|
|
|
"Match":"Start",
|
|
|
|
"Value": "Purchase Cash Converters",
|
|
|
|
"Category":"Personal",
|
|
|
|
"Description":"Cashies"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
```
|
|
|
|
This means that any statement that starts with "Purchase Cash Converters" will be assigned the category "Personal", and the description "Cashies".
|
|
|
|
|
|
|
|
- `"Match"` specifies the type of matching to perform. It can be any of the following:
|
|
|
|
- "Start": Match the start of the description.
|
|
|
|
- "End": Match the end of the description.
|
|
|
|
- "Contains": Match anywhere in the description.
|
|
|
|
- "Exact": Only match if the bank statement's description is exactly equal to the provided value.
|
|
|
|
- "Regex": Match with [regular expressions](https://en.wikipedia.org/wiki/Regular_expression).
|
|
|
|
- `"Value"` specifies the value to match against.
|
|
|
|
- `"Category"` is the category that the statement should be filed under.
|
|
|
|
- `"Description"` is a short description to distinguish the particular merchant.
|