ProjectsProjectsProjects

projects

fullstack apps to odds and sods, here's some of the stuff i've made

LondonTransit

LondonTransit

a comprehensive discord bot for information on transport for london services. written in javaScript with node.js and discord.js, it provides real-time updates on bus, tube, and train services, including live service status, station departures and disruptions. interacts directly with TfL's api to deliver accurate and timely information to users. londontransit was my first fully-fledged project, and it was (and still is) a great learning experience.

FORMALISER.net

FORMALISER.net

an extremely basic endpoint for html form submissions, allowing users to send data from forms to an email address written into the url. zero-setup, no database. written in javascript with node.js and express, it provides a simple solution for handling form submissions without the need for complex backend systems. unfortunately, it is frequently marked as spam by email providers and is consequently no longer worth maintaining, so it is not recommended for production use. it was honestly just a for fun project. don't use it.

Last.fm Listening Streamer

a websocket-based application that streams last.fm listening data to a web client. written in javascript with node.js and express, it provides real-time updates on users' last.fm listening activity. the application connects to the last.fm api to fetch user data and streams it to connected clients via websockets, allowing for live updates on what users are listening to. you can see it in action on my website – if i'm listenning to music, it will show up as a spinning album cover in the bottom right corner of my name on the homepage. for your own use, you can run it locally by cloning the repository and following the instructions in the readme.

monzocord

🧪

an experimental discord bot for the monzo api, written in javascript with node.js and discord.js. it allows users to interact with their monzo accounts directly from discord, providing features such as balance checks, transaction history, and more. it's a work in progress and due to it handling sensitive financial data, you will ONLY be able to self-host it with your own monzo credentials. there is and will never be a public instance of this bot. cool if you need to flex your 6 figures on your homeboys.

FreedomBot

🔒

a custom-commissioned discord bot for a discord community, written in javascript with node.js and discord.js. it provides various features such as moderation tools, verification systems, and more. the bot is designed to enhance the user experience within the community, providing a range of functionalities to help manage and engage with members effectively. it is a private bot, so you will not be able to use it unless you are in the community it was made for.

MLINX

a simple, easy-to-use, and lightweight link-shortening service written in javascript with node.js and express. it allowed users to shorten long URLs into short, shareable links, even offering the option to add custom domains. the service was designed to be user-friendly and efficient, providing a straightforward solution for link management. however, the service had to be shut down when the database provider, planetscale, decided to stop offering a free tier. lacking the funds to pay for the service, and due to functionality being specifically engineered to work with planetscale, the service was discontinued. it was a fun project to work on, and i learned a lot about link management and database integration. i've since them used dub.com for my link-shortening needs, which is a great service that offers similar functionality with a free tier.

this website

exactly what it says on the tin. this website is a personal portfolio and blog, showcasing my projects, skills, and experiences. it is built with next.js and tailwindcss, providing a modern and responsive design. the website features a blog section where i share my thoughts on various topics, as well as a projects section where i showcase my work. it is designed to be a simple and effective way to present myself online.