Portfolio

This is a small collection of my favourite projects I've built with links to pages relating to the project.

Auto Py To Exe

This project was my attempt at making the task of packaging Python scripts to Windows executables to run on computers without Python installed easier for new-comers.

This project allows someone to easily set up a server that uses chromes app mode as an interface and then calls PyInstaller with the parameters provided by the user.

Auto-Py-To-Exe Empty Interface
PyPI Version PyPI Supported Versions License Downloads Downloads Per Month

This project can be installed from PyPI by executing:

python -m pip install auto-py-to-exe

And then to run the project, simply call:

auto-py-to-exe

Monopoly Money

Monopoly Money Logo

Monopoly Money is a web app that helps you keep track of your finances in a game of Monopoly

Instead of using the cash that the game commonly comes with, you can play Monopoly like you're playing the credit card edition, but with your phone - a much more faster way to exchange money.

Funds page with game id Game history Bankers actions page

Spotify Lyrics Viewer

Spotify Lyrics Viewer Logo

Spotify Lyrics Viewer is a tool that allows you to view the lyrics of the current playing song on Spotify by simply signing into Spotify.

The tool provides a basic interface showing details about the current playing song and lyrics sourced from Genius.

Spotify Lyrics Viewer showing lyrics

Price Per Unit

PyTutorials Channel Header

This project is an Android app that compares prices for similar items and will calculate the price per unit for each item. These values can then be compared to find the best value for money. Simply give a name (optional), enter in the cost, amount and size of each item and the unit per dollar will be calculated.

Paddock Grazing Planner

Paddock Grazing Planner is tool that recommends paddocks to potentially graze next. It can also record farm walks (kgDM/ha readings), paddock events, tasks and offers an interactive map. User management, multiple farms and report generation is also available.

Paddock Grazing Planner feature demo

The complete application consists of:

  • A React + TypeScript frontend (+ leaflet, d3, material-ui, nswag)
  • A .NET Core backend (+ EF Core, ASP.NET Core)
  • A React + TypeScript administration portal (+ mui, vite, visx)
  • Automated infrastructure deployments using terraform through GitHub Actions workflows into Azure

Emotionify

Emotionify Banner

Emotionify is a web app that allows users to login to Spotify, select a playlist and then sort them using Spotify's pre-calculated audio feature values.

By default, this project aims to create emotionally gradiented Spotify playlists for smoother emotional transitions. It does this by sorting songs based off the two features Valence and Energy calculated by Spotify based on distance from the origin.

Users also have the ability to change how and what songs are sorted by.

Example Visualisation Sort of a Personal Playlist

PyTutorials YouTube Channel

PyTutorials Channel Header

When I have time and ideas, I like to make programming tutorials. Currently most of my tutorials are Python related but I also have a few different ones.

Some of my videos have quite a bit of attention, for example:

I give a significant amount of help in the comments for these videos and try my best to find solutions for issues people are having. This also allows me to gauge what people like in terms of topics and the videos themselves and get great feedback.


Who's On My Network

Who's On My Network Logo

This tool helps you keep and eye on who is on your network and when. It can periodically scan your network and you can then assign devices to people and view who is on your network.

The tool provides a React interface to view scans that have been made and identify unusual and unexpected activity.

Who's On My Network Overview Demo

nitratine.net

Nitratine Logo

Nitratine is a website where I share projects developed by me and tutorials on topics that I'm interested in. Currently this is the third version of the site and is hosted statically using GitHub Pages and built with a custom Python build script.

When developing and writing posts, the website can be hosted locally using Flask which then changes to be viewed without having to re-build the site on each modification. Posts are written in markdown which are converted to HTML using Flask-FlatPages.

Due to the static nature of the site, I use Frozen-Flask to freeze the site into a static version that can easily be hosted on GitHub pages. A GitHub Action picks up any changes on the master branch, builds the site and deploys it to GitHub pages..