Sam Edwards
Interactive versionOutside my day job, most of what I build is for esports. I'm the volunteer Technical Director at Rematch Esports, where I lead a small team of two junior developers.
Day to day I work with Next.js, React, TypeScript, Payload CMS, Tailwind CSS, PHP and WordPress. I design the database schemas behind these sites, and I'm comfortable querying Postgres, MariaDB and MongoDB directly.
This portfolio usually lives inside a pretend phone. This is the same thing without it.
Projects

Cult Hero
An arcade football career game for Android. You play the moments when the ball finds you, and work your way up from the bottom division. I designed the game and directed the build, with the code written by AI, and built its website in Astro and Tailwind.

CustBot
A Discord bot built on Next.js. It translates messages with DeepL, makes timestamps that show in everyone's own time zone, and keeps a /pay leaderboard of who has sent me the most.

RME
The competitive site for Rematch, Sloclap's 5v5 football game. It has its own tournament platform: organisers run sign-ups, check-in and brackets, and teams play their matches through the site, with a live chat to the admins. Tournaments from start.gg and Rematch Nexus are imported, so every result ends up in one place. Players record their stats by uploading a screenshot of the scoreboard.

SPK
Website for SPK Esports, a club with Valorant and EA FC teams. They look after their own pages, rosters and news through the CMS.

Pharus IT
Website for Pharus IT, a managed IT support company. I built it from their design, with a page builder so they can make new pages themselves.

custard-kit
My own toolkit of TypeScript helpers, published to npm. It has general utilities, Payload CMS helpers, and API clients for Discord, Steam, start.gg and Twitch. There's also an OCR helper that uses Claude to read data out of images.

IOT
A project I built in University that was a part of my Internet of Things module. It was used to monitor and control a Raspberry Pi that could control air conditioning, heating, and opening/closing windows. The username and password can be found on the repo.

Pokédex
A Pokédex built using NextJS and PokeAPI. I wanted to design and make it look like the generation 9 in-game Pokédex.