I'm Xander

avatar
it works on my machine...Contact

Minecraft Modding

Java
Kotlin
Gradle
Maven
Maintaining Libraries
Bytecode Manip
Commissions

I spend most of my free time working on modifications for Minecraft: Java Edition. This involves work with Java, Kotlin and Gradle build system. To mod a Java application, extensive knowledge of the JVM's bytecode is required. I employ runtime bytecode manipulation techniques, primarily powered by Mixin and ASM libraries.

Some of these mods are also libraries. Their functionality is to provide utility for other modifications. One such example is YetAnotherConfigLib. This mod has been downloaded over 17 million times, and used by many other mods that aren't even my own. This has forced me to learn the ways of maintaining a library, providingdocumentation, maintaining API compatibility, adhearing to semver and publishing maven artifacts. Many other mod developers depend on this mod, and love using it!

I have also been commissioned by multiple YouTubers to create mods for their videos: namely ChrisDaCow and Socksfor1. This valueable experience has taught me the ways of working for a client's needs and deadlines, rather than my own.

This hobby has helped fund my life, amounting at (as of June 2024) 60 million downloads. It's something I'm extremely proud of and will continue to work on for the forseeable future. You can view my accounts onCurseforge andModrinth, sites dedicated to publishing mods.

very experienced

Other languages

Rust
Python
  • Rust
    I have made my own no-engine, minimal Voxel Engine using Rust and wgpu-rs. This was my first Rust project and demonstrates my method of learning: doing. I somehow managed to create this voxel engine without any prior reading on how voxel engines work. I figured it out myself. This voxel engine is available on GitHub, here.

    voxel engine screenshot
  • Python
    I have basic scripting skills with Python and once made a small ML script that scanned frames of input videos for specific faces, outputting clips of just them. This is what I used to create show character highlights on youtube.

YouTube Videos

Editing
Scripting
Collaboration

I also occasionally enjoy creating videos for YouTube. I use Davinci Resolve as my video editor.

I created a behind the scenes video in collaboration with big YouTuber ChrisDaCow about teaching Bonobos (species of Ape) how to play Minecraft. I was the developer for this project; you can learn more about it here. I scripted and edited a high-quality video to be published along-side his. Which got extremely positive reception.

intermediate

Linux Knowledge

Terminal
Servers
Docker

I used to daily-drive a Linux desktop system which means I have great knowledge with the Linux terminal. I understand the Unix file-system from my time with Linux and macOS. I distro-hopped from Debian-based to Fedora to Arch-based. Which means I have a basic understanding of most Linux distributions.

I host my own maven server for Minecraft modding, powered by Reposilite, using Docker Compose. My Docker knowledge is minimal and not something to be relied on right now, but with enough time, I can get a basic application up and running. This maven server has forced me to learn more about networking and the importance of network security, such as setting up a strict firewall.

good

Backend

Kotlin+Ktor
SQL
REST APIs

I am confident in my ability to spin up a quick REST API server using Kotlin's Ktor framework, with an SQL database attached. This is something I have done many times for projects that have ended up not coming into fluition (or been put on the back-burner!) One such example is CraftStudio. I created a full backend service, with authentication, user accounts, an SQL database and more in a just a week. This project was never completed since I didn't get around to completing the frontend. This might be a project I'd like to revist in the future.

I have no experience in other languages or frameworks for building REST APIs, just Kotlin+Ktor, for now.

good

Frontend Web Dev

React
Vue
TypeScript
JavaScript
Node
HTML
CSS

I have some experience doing frontend development. This website is an example of that. The site you are reading this on is made using NextJS and React, it's my first React project! This site used to be made in Nuxt and Vue, but I am trying to make the jump to React, since there are more job opportunities and it's a more stable platform.

This skill is an example of how I am eager and quick to learn new technologies. With just some online documentation to hand, I was able to port my old website, made in Vue, to React, with zero prior knowledge on the subject.

intermediate