Beginning the Budget App - Routes

My server implements a RESTful API to be used with the budget app, but in order to do that I need to decide on the routes I will need to access. This post outlines the initial routes I’ve decided to implement.

Read This »

Beginning the Budget App - Database

Now that my Node server is up and running (and secure), it’s finally time to actually do something with it! My first project will be purely software; a budgeting app that can be used to record transactions and define a monthly limit on each category to keep track of finances using a variation on the ‘envelope’ strategy.

Read this »

Testing the Authentication Routes in Mocha

With all the changes made in the last few posts, obviously my Hello World tests would now fail and I needed to write new ones to verify the authentication was working correctly.

Read this »

Connecting the Database to the Node App

I’d previously installed mysql but the authentication I added in my last blog post just kept everything in memory so far so in this post I’ll be using the MySQL database connected to Node using Knex to construct queries.

Read this »

Adding Authentication to the Node App

After installing MySQL I realised that I needed a better solution than just storing plaintext usernames and passwords in an authentication table. So while I’m on my security-spree I’ve decided to implement the authentication middleware for the Node App including salting and hashing passwords using bcrypt and issuing JSON Web Tokens (JWT) to authenticate subsequent requests.

Read this »

Installing MySQL and phpMyAdmin on the Server

With my server now secured I’m installing MySQL and phpMyAdmin for the database and to view and configure it via a GUI.

Read this »

Configuring HTTPS for Jenkins on the All-in-One Server

In my last blog post I registered a new domain name and installed a Let’s Encrypt certificate to configure HTTPS, but now I reconfigured it so Jenkins would be secured too and could be reached on

Read this »

Configuring HTTPS for the Server

Today I’m adding HTTPS support to my new All in One Server by registering a domain name and installing an SSL certificate from Lets Encrypt.

Read this »

Configuring the All-in-One Server

In this post I’m basically starting the CI/CD pipeline from scratch on a new server - this time I’ll keep it running 24/7 so I can get moving on the projects that will interact with it. This involves setting up Jenkins and the CI/CD pipeline again, configuring Apache as a reverse proxy and finally adding an SSL certificate to implement HTTPS for added security.

Read this »

Adding an Apache Reverse Proxy for the Node App Server

I want to add HTTPS support to the node-app server so today I configured an Apache Reverse Proxy to redirect traffic from port 80 and 443 (HTTP and HTTPS) to my node-app which runs on port 3000.

Read this »
About Me

Engineer, maker, do-er...
I basically just like to make things.