If you're not a developer this is the guide for you!
First thing we need to do is get our login credentials that will allow Monzo web to talk to Monzo's servers and fetch things like your balance and transactions.
To do this, we need to log in to the developer site.
- First, visit https://developers.monzo.com and click
Sign in with your Monzo account
. - It'll take you to a login page for Monzo, click
Authorize
where you can enter the email you use to log in to Monzo. - Once you've entered your email address you'll get an email, click the button in the email.
- That link will log you into the developer site (remember these instructions for later, as we'll log into Monzo web the same way)
Now that we're logged in, we can create our credentials. There are three distict credentials, they are the client id, which is used to identify the application itself, the client secret, which acts as a password of sorts and should be kept secure as you would a password, finally there's the redirect URI, this is a link that tells Monzo where to send you back to after you've logged in, in this case it will be sending you back to Monzo web.
- Click
Clients
in the menu bar - Click
New OAuth client
- Enter a name, like
Monzo web
- Enter a redirect URL, which we'll put as
http://localhost:8080/callback
- Add a description, as Monzo require it
- Set the confidentiality to
Confidential
- Click
Submit
- Click on the client you've just created
- You've now got credentials to use with Monzo web!
Next, we're going to install Monzo web to our machine along with some extra tools to make it run.
- Open the Terminal app
- Use this guide to check if you have Git, it'll help you install it if you haven't
- Once you have Git installed you need to install Node.js use the Mac installer at the top or install using one of the Linux binaries
- Check you've installed Node.js correctly by running
node -v
in the Terminal, it should print a set of numbers, do the same withnpm -v
and check it too prints some numbers
- Download Git
- Open the downloaded installer and follow it through to install.
- Open a command prompt and type
git -v
to check its installed, it should print out a number. - Once you have Git installed you need to install Node.js use the Windows installer at the top.
- Check you've installed Node.js correctly by running
node -v
in the Terminal, it should print a set of numbers, do the same withnpm -v
and check it too prints some numbers.
Now that we've installed Monzo web and the tools it runs with we can configure the app.
- Download the source code with this command
git clone https://github.com/robcalcroft/monzoweb.git
, which should be pretty quick. - Change into the folder that was created when the source code downloaded with
cd monzoweb
. - Install all the extra libraries Monzo web uses to run with
npm install
. - Create a copy of the example credentials file with
cp .env-example .env
orcopy .env-example .env
for Windows. - Open the new file in a text editor, with
open -e .env
for Mac andnotepad .env
for Windows. - Edit the variables and replace with the credentials we made in the first step, the last credential, the
GOOGLE_MAPS_API_KEY
can be created here https://developers.google.com/maps/documentation/javascript/get-api-key - Now you're ready to rock!
Check out the README.md file to learn how to boot the servers (it's just running some more terminal commands 😄).