MonzoDash is a dockerised web app for monitoring and managing your Monzo bank account.
If you've been using this thusfar, please pin to v2 to continue using MongoDB. If you have the know how you can migrate data to SQLite, but i've found its easier just to start over
- Days to payday (with per day budget information)
- Dedicated spending chart
- Automatic payday pot dispersion
- Transaction logging
- None direct debit/standing order handling via pots
- Full transactional report
- Budgetting tools (to be decided)
You need to use docker, and I recommend using docker compose to spin up MonzoDash!
version: "3.4"
services:
monzodash:
image: ghcr.io/sasharyder/monzodash:latest
restart: unless-stopped
links:
- mongo
environment:
- TZ=Europe/London
- MONGO_USERNAME=${MONGO_USERNAME}
- MONGO_PASSWORD=${MONGO_PASSWORD}
- MONGO_HOST=${MONGO_HOST}
- MONZO_CLIENT_ID=${MONZO_CLIENT_ID}
- MONZO_CLIENT_SECRET=${MONZO_CLIENT_SECRET}
- MONZODASH_DOMAIN=${MONZODASH_DOMAIN}
- MONZODASH_WEBHOOK_DOMAIN=${MONZODASH_WEBHOOK_DOMAIN} #Optional: will fall back to MONZODASH_DOMAIN if not added
mongo:
image: mongo
restart: unless-stopped
environment:
MONGO_INITDB_ROOT_USERNAME: ${MONGO_USERNAME}
MONGO_INITDB_ROOT_PASSWORD: ${MONGO_PASSWORD}
volumes:
- ./db:/data/db
Before doing this, create a .env
file along side your docker-compose.yml
file.
MONGO_USERNAME=monzodash
MONGO_PASSWORD=monzodash
MONGO_HOST=mongo
MONZO_CLIENT_ID=
MONZO_CLIENT_SECRET=
MONZODASH_DOMAIN=http://localhost
MONZODASH_WEBHOOK_DOMAIN=http://localhost #Optional: will fall back to MONZODASH_DOMAIN if not added
- You can get
MONZO_CLIENT_ID
andMONZO_CLIENT_SECRET
fromhttps://developers.monzo.com/
- Set
MONZODASH_DOMAIN
tohttps://YOUR_DOMAIN
(Where you'll setup nginx ect to access the frontend, or access directly) - Set
MONZO_WEBHOOK_URI
tohttps://YOUR_WEBHOOK_DOMAIN
(not required if they're the same domain.)
Once everything is setup and you've setup NGINX ect, just go to what you've set as MONZODASH_DOMAIN
and you will be presented with a login screen!
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.