Writing on software, music and other interesting things.

This is the home for all of my long-form thoughts relating to software, music as well as other stuff that generally interests me.

Is Prop Spreading in React Really an Anti-Pattern?

There's a lot of discussion online about whether or not prop spreading in React is an anti-pattern. Prop spreading is the use of the JavaScript spread operator ... with React props.

Merge TW Props

Introducing merge-tw-props, the NPM package that revolutionizes the way you merge React component props using TailwindCSS classes.

My Favourite Albums of 2022

As we enter the new year, it's time to reflect on the amazing music that has been released in the past 12 months. Here are some of my favorite albums of the year, in no particular order:

How I updated my personal portfolio using NextJS, Tailwind, Storyblok and AI

I'm excited to share my latest project with you - the update to my personal portfolio website! This update involved a complete overhaul of my old website, which was built using a self-hosted WordPress site and PHP. I decided it was time for a change because of all of the annoyances I had with WordPress and PHP, and I wanted to try something new.

React Material Symbols

I'm excited to announce the release of my first npm package, React Material Symbols. This is a minimalist package for adding Material Symbols to any React project.

Green Eggs

Green Eggs is a social recipe app for iOS and Android that lets users create, share, and search for recipes that meet their dietary and allergy requirements.

Sorting Algorithm Testing Tool

I'm excited to share my latest project with you - a testing tool for sorting algorithms that I developed with my group for a university subject (CSIT314).

REST Tester

I'm excited to announce the release of REST Tester, a random testing tool for RESTful APIs. This tool is designed to help developers test the accuracy of their schema files and the implementation of their APIs.

Tempus Tours

I'm excited to share my latest project with you - Tempus Tours, an "Uber for tour-guides" website developed in partnership with another computer science student for one of our subjects.

Incontrol

I recently participated in my first Game Maker's Toolkit Jam, and I'm excited to share the result with you. In just 48 hours, my friend and I developed a puzzle game inspired by the theme "Out of Control."

YouTube Scraper

As part of a university assignment on data mining, I developed YouTube Scraper, a command-line tool written in Python. This tool helps users generate CSV files of YouTube data, allowing them to easily collect and analyze information about their favorite channels and videos.

Germ Warfare

I'm excited to announce the release of our latest game, developed in partnership with my friend Fourbs for Ludum Dare 46. The theme for this game jam was "Keep it Alive," so we decided to create a game where you play as a doctor, shrunk down inside a patient, fighting to keep your patient alive by killing bacteria and viruses.

AllInsure

I'm excited to announce the completion of my latest project - an insurance management application developed as a University assignment.

Sacrificial Defence

I recently participated in the Ludum Dare game jam, where the theme was "your life is currency." In just 48 hours, I developed a shoot-em-up game inspired by space invaders called Sacrificial Defence.

Claustrophobic Typist

I recently participated in the Ludum Dare game jam, where the theme was running out of space. In just 72 hours, my friend and I developed a game called Claustrophobic Typist.

Dunk Four

I recently participated in the Ludum Dare game jam, where the theme was to combine two incompatible genres. In just 48 hours, I developed a game that blends elements of basketball and connect-four.

Libre Music

I'm excited to announce the launch of LibreMusic, a new music streaming app based on the YouTube API. With LibreMusic, you can discover and listen to a wide range of music, from the latest hits to timeless classics.

Nans of Rage

I recently participated in the Ludum Dare game jam, where the themes were two button controls and growing. In just 72 hours, I developed a simple beat-em-up style game featuring graphics done by a friend.