Check out some of my latest projects
Over 250,000 lines of code to date, my biggest project with a whole community behind it.
The project's aim is to recreate the popular MMORPG RuneScape within the limitations of Minecraft. Recreating complex interactions of RuneScape such as their tick system for actions such as combat and skilling.
Managing builders, modellers, and staff to ensure the best experience for players. Setting and accomplishing set goals for updates. Receiving feedback and working with players to make the gameplay as intuitive and fun as possible.
I could go on and on about this project it has been a intrumental part of my development career. Feel free to ask anything about it.
My personal website, built with Next.js and Tailwind CSS. I wanted to create a simple and clean design to showcase my projects and skills.
My original website was build on php and hosted on my home server through cloudflare tunnelling. Wanting to try out the compute of cloudflare pages, I used GitHub co-pilot to help replicate my existing website utilising Next.js, Tailwind CSS and Shadcn.
During my devlopment phase of this website, I also picked up knowledge around VSCode's workspaces. Finding the features it provides to be very useful for my workflow, I intend to continue to use it in the future.
My next goal is to add a blog section to the website, allowing me to write about my projects and share my knowledge with others.
Sick and tired of having Discords forums glitch out on me, and lacking many crucial features and a broken search. I decided to create an easy way to manage forums from Discord, with a web dashboard to manage everything.
With DisForums, you can view all the discord forums from Discord servers you are and admin of, being able to then quickly sort, search and filter through them with ease.
Currently hosted on AWS amplify with the Next.js stack, but looking to move to cloudflare pages since I have been using it for my personal website. It is at a MVP stage so I am also looking to add a few more features such as Stripe integration for paid features.
Built using Next.js and Tailwind CSS, with a custom design to match the game's theme. Featuring all our blog posts, utilising next-mdx-remote to render from markdown. This allows us to easily write and publish blog posts and keep the pages consistent.
The website is statically generated and hosted on Cloudflare Pages, this significantly reduced the load times and improved the SEO of the site. One of the latest features is the ability to search through the website to quickly find blog posts and information about the game.
Using embedded iframes, it includes a live map view of the game world, allowing players to easily navigate and find their way around the game. Players can also listen RuneScape music related to their position in the game using the music player.
Additional web services such as the hiscores are also built using Next.js but are using Server Side Rendering (SSR) as I wanted to learn more about the framework and how it works. This allows us to easily integrate with the game and provide real-time updates to players.
The bot was created to help manage the MineScape community discord and provide information about the game. It includes features such as a forum thread management systems, player stats, and item price lookup.
The bot was the easiest way for players to lookup many things such as hiscores and grand exchange prices. It has since expanded to include the ability to chat with players from the discord and admin functions to reward players for bug reports and suggestions.
During MYOB Hackdays 2019, in two days with a team of 4, we planned, designed, and implemented a chrome extension.
The extension allowed employees using MYOB Practice access to javascript variables from the webpage straight from the panel. Additionally made required async calls to retrieve data from another webserver.
After injecting a script onto the page, using chrome tab messaging and window listeners we managed to pull javascript variables from the DOM back to our extension panel.
We later submitted it to the chrome web store as a private extension, which would allow for any MYOB employee to install the extension via a private link.
Placing second, this project was made for the Auckland Student Coding Hackathon hosted by MYOB and ezyVet. Working with a friend, another AUT student, we had 48 hours to design and implement a website where users could play a board game.
After throwing around a few ideas from card games to a 2d platformer using phaser, we ended up deciding we wanted to create a multiplayer game and went with the classic texas hold'em poker.
For the frontend we used react-bootstrap, connected to the backend via Axios requests for user information and websockets for gameplay.
For the backend we used Node.js, Express, and Socket.IO, providing JWT secured routes as well as public routes.
In my first semester at AUT, I saw that there was no ability to plan out your classes on their Arion website.
I decided to make a scraper using jsoup, scraping all the degrees and classes. Then allowing the user to select the classes they want and display all possible timetables in a simple interface.
Following on from my Java version of the AUT Planner, I delved into React to create the application in a more accessible web format.
Utilising react-bootstrap and toastify, I quickly put together a template for the interface and timetable. The search bars are responsive as to save processing on the API and data transfers.
Building the API, I used node.js express for routing, built on top of a simple MySQL database.
For the backend, I went with my familiar Java and built a web scraper of the AUT Arion website. Which would parse each semester's streams, courses, and timetables, storing them in the MySQL database for use in the API.
One of the top 40 contributors to spigot resources, known in the community with over 1700 messages and almost 900 positive ratings. Developing various plugins for the Minecraft server platform.
Made at university for Program Construction and Design.
Fully functional Solitaire card game made in Java.
Has both GUI and CLI implementations.
In my last Semester at AUT, I took the Game Programming course as one of the electives for my double major.
This includes a personal project (Solitaire) and a team project (Grappletation) both built in C++.
For my personal game, I recreated Solitaire with features including a splash screen, controls screen, Xbox controller support, auto-complete board, memory cleanup, and ImGUI debug menu.
The team game, Grappletation, was a 2D puzzle game with one character using a grapple gun and another using a portal gun to solve puzzles.
Hi, thank you for checking my portfolio, here is a little more info about me.
Working as a full stack software developer based in Auckland New Zealand with a Bachelor Degree in Computer and Information Sciences at the Auckland University of Technology, one of the top-ranked universities in the country. Double majoring in Software Development and Computer Science, with an interest in Artificial Intelligence and Game Programming.
Self-taught since the age of 14, starting with simple windows batch scripts to automate tasks. I quickly honed my knowledge of Java, PHP, and MySQL, picking up new languages as opportunities arise. I have a great ability to transfer my skills over to new languages, utilising all available resources to adapt my skillset.
Itching to demonstrate my abilities with the right employer to further my career in the software industry.
I have a great passion for, and interest in game and website development through my works. With the desire to help create resources for everyone to learn software development for themselves, pathing the road for future young developers.