32 lines
1.5 KiB
Markdown
32 lines
1.5 KiB
Markdown
BunyMuny
|
|
===
|
|
[![Build Status](https://drone.bune.city/api/badges/lynnesbian/BunyMuny/status.svg)](https://drone.bune.city/lynnesbian/BunyMuny)
|
|
|
|
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:
|
|
```csv
|
|
Match,Value,Category,Description,CaseSensitive
|
|
Start,Purchase Cash Converters,Personal,Cashies,true
|
|
```
|
|
This means that any statement that starts with "Purchase Cash Converters" (case sensitive) 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.
|
|
- `CaseSensitive` specifies whether or not the match should be case sensitive.
|