build-container / build (push) Successful in 33s
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
38 lines
2.1 KiB
Markdown
38 lines
2.1 KiB
Markdown
# money
|
|
|
|
Local tool that loads bank/card statements (Chase Visa, Ally, CVFCU PDFs; Capital One CSV) into `Bills_Tracker.xlsx` and shows a web dashboard.
|
|
Everything runs locally; statements and the workbook are **never** committed or baked into the image.
|
|
|
|
## Run on ZimaOS / CasaOS
|
|
Add the app: App Store -> Custom Install -> import `compose.yaml` (it follows the ZimaOS `x-casaos` format).
|
|
Copy `Bills_Tracker.xlsx` into `/DATA/AppData/money/data/` (the app's data folder), then open the app's Web UI (port 8765).
|
|
The image is built by Gitea Actions (`.gitea/workflows/build.yml`) and pushed to `git.necloud.us/nate/money`.
|
|
Add a repository secret `REGISTRY_TOKEN` (a Gitea access token with `write:package`), and on the ZimaOS box run
|
|
`docker login git.necloud.us` once so it can pull the private image.
|
|
|
|
## Run with plain Docker
|
|
```bash
|
|
mkdir -p data && cp /path/to/Bills_Tracker.xlsx data/
|
|
AppID=money PUID=1000 PGID=1000 TZ=America/New_York docker compose up -d # then edit the bind path in compose.yaml or symlink
|
|
```
|
|
|
|
## Starting fresh
|
|
`template/Bills_Tracker.template.xlsx` is a blank workbook (all tabs, formulas and charts; no data). The app's first-run screen has a
|
|
"Create a blank workbook" button that copies it into the data folder. Then drop statements in; new payees land on the Lists tab as
|
|
"Other / Unsorted" for you to categorize. `loader_rules.example.json` shows the private rules file format.
|
|
|
|
## Personal rules (not in git)
|
|
Your name, card last-4 and similar live in `loader_rules.json` next to the workbook (git-ignored, not in the image):
|
|
```json
|
|
{"own_names": ["JANE DOE"], "own_bank_hints": ["MY CREDIT UNION"], "csv_accounts": {"1234": "Capital One Card"}}
|
|
```
|
|
`own_names` lets the loader recognise transfers between your own accounts. Copy the file into the data folder (`/DATA/AppData/money/data/` on ZimaOS).
|
|
|
|
## Run without Docker
|
|
```bash
|
|
python3 -m venv .venv && .venv/bin/pip install -r requirements.txt && .venv/bin/python app.py
|
|
```
|
|
`DATA_DIR` (default: this folder) is where statements, the workbook and `backups/` live.
|
|
|
|
The app has no login. Publish it on localhost only, or put it behind your own authentication.
|