https://github.com/lukesheard/monzo-dashboard
A dashboard to track you @monzo spending on the web.
https://github.com/lukesheard/monzo-dashboard
Last synced: 4 months ago
JSON representation
A dashboard to track you @monzo spending on the web.
- Host: GitHub
- URL: https://github.com/lukesheard/monzo-dashboard
- Owner: LukeSheard
- Created: 2016-07-17T20:06:35.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2016-09-25T18:57:34.000Z (almost 10 years ago)
- Last Synced: 2025-09-20T22:36:37.693Z (10 months ago)
- Language: JavaScript
- Homepage:
- Size: 1.54 MB
- Stars: 4
- Watchers: 2
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Monzo-Dashboard
[](https://travis-ci.org/LukeSheard/Monzo-Dashboard)
[](https://codeclimate.com/github/LukeSheard/Monzo-Dashboard)
[](https://codeclimate.com/github/LukeSheard/Monzo-Dashboard/coverage)
[](https://david-dm.org/LukeSheard/Monzo-Dashboard)
[](https://david-dm.org/LukeSheard/Mondo-Dashboard?type=dev)
Monzo-Dashboard is a project to build out a working web based "clone" of the existing iOS Monzo
application, currently it features a transaction list and transaction view similar to the feed
on the iOS app. However there are plans to include further features such as
- [ ] Spending Maps
- [ ] Reports
- [ ] Search
I aim to include further features made available to the app when they're launched in the API.
## Deploy Your Own Version
[](https://heroku.com/deploy)
## Running the app
To launch the app you will need to get a Monzo develop client key. This app is isomorphic and does
not expose your client secret and thus you can use refresh tokens; thus you can select the
confidential option when creating your client.
To run the app you can either clone / download this repo, or install it on Heroku (coming soon!).
Simply set your client keys in .env of in using process.env and launch the app using `node index.js`.
### Environmeny Variable overview
Variable Name | Default | Description
--------------|---------|--------------
`COOKIE_ACCESS_NAME` | `cookie-name` | Cookie name for storing Monzo access token
`COOKIE_REFRESH_NAME` | `cookie-refresh` | Cookie name for storing Monzo refresh token
`COOKIE-SECRET` | `cookie-secret` | Secret used to sign cookies
`authUrl` | `https://auth.getmondo.co.uk` | Monzo OAuth authentication url
`baseUrl` | `https://api.getmondo.co.uk` | Monzo base API url
`CLIENT_ID` | | Monzo client ID. **The app will not start unless this is set**
`CLIENT_SECRET` | | Monzo client secret. **The app will not start unless this is set**
`REDIRECT_URI`| `http://localhost:8080` | URL OAuth emails should redirect to for your app
`STATE_TOKEN` | | OAuth validation state, should be random and unguessable **The app will not start unless this is set**
`GOOGLE_API_KEY` | | Google developers Maps API key. **The app will not start unless this is set**
`PORT` | `8080` | Server port
## Development
This app was authored in Node 6.x, however it still supports 5.x. To install Node
refrer to their installation guide at [https://nodejs.org](nodejs.org), or use a shell extension
like [NVM](http://github.com/NVM). It is an isomorphic [React](https://reactjs.com) application
using [Redux][(https://redux.com)].
### Testing
Unit tests are written using [Tape](http://github.com/tape) and currently test all functional
areas of code.