Software Engineer · Full Stack

RGBNathan

Full-stack developer with 10+ years in Java and Spring Boot, building modern React applications and music community platforms.

GitHub

How I Work

Problem-Solving

Systematic approach to breaking down complex challenges with evidence-based decisions and a continuous learning mindset.

Code Quality

Test-driven development with clean, documented, maintainable code and comprehensive test coverage above 80%.

User-Centered Design

Accessibility-first, responsive design with performance optimisation at the forefront of every decision.

Tech Stack

Backend
Java10+ yrsSpring Boot8+ yrs
Databases
Oracle10+ yrsPostgreSQL10+ yrs
Frontend
React 191+ yrTypeScript1+ yrNext.js1+ yrVite1+ yr
UI & Styling
Tailwind CSS1+ yrshadcn/ui1+ yrFramer Motion1+ yrD3.js1+ yr
Testing
Jest1+ yrPlaywright1+ yrTesting Library1+ yr
Tools
Nx Monorepo1+ yrGit / GitHub10+ yrsESLint1+ yrPrettier1+ yr

Projects

1001 Everything tracker
Live & Active

1001 Everything

A tracker for the curated "1001 … Before You Die" lists: video games, movies, albums, TV, songs, books, anime and historic sites. Mark off what you have played, watched, heard, read and visited, all in one place.

A React frontend and a multi-module Spring Boot API, run in Docker on a self-hosted server.

Frontend

  • React 19
  • TypeScript
  • Vite
  • Tailwind
  • shadcn/ui

Backend

  • Java 21
  • Spring Boot 4.1
  • PostgreSQL
  • Flyway
  • Jsoup
  • Docker
More

Outcomes

  • Eight live lists: video games, movies, albums, TV, songs, books, anime and historic sites.

Decisions

  • Enrichment that needs no API keys.
  • A multi-module backend.
  • One scraper per list.
  • GDPR controls.
Oddball Records platform
Live & Evolving

Oddball Records

Modern platform for the Oddball Records vinyl community at The Boot — events, Spotify playlist integration, and album discovery.

A React Router frontend on Netlify, with route loaders and prerendering, and a Spring Boot API in Docker on a self-hosted server.

Frontend

  • React 19
  • TypeScript
  • Vite
  • Tailwind
  • shadcn/ui

Backend

  • Spring Boot
  • Docker
  • Discogs API
More

Problem

  • The club ran its events through spreadsheets and group chat.

Outcomes

  • It replaced the spreadsheets and group chat.
  • The club’s owner now saves considerable time managing events.

Decisions

  • Album details enriched from Discogs.
  • Route loaders and prerendering.
  • A separate library for the admin pages.
  • A caching layer for API responses.
110+ components25k+ lines
Beer Check allergen tool
Live & Active

Beer Check

Check whether beers are vegan, vegetarian, or free from common allergens. Supports label photo upload with OCR, barcode scanning, and manual name/brewery search.

A React frontend on Netlify, with an edge proxy in front of a Spring Boot API in Docker on a self-hosted server.

Frontend

  • React 19
  • TypeScript
  • Vite
  • Tailwind
  • shadcn/ui

Backend

  • Java 21
  • Spring Boot 4
  • PostgreSQL
  • Docker
More

Problem

  • Built for a real dietary need, for friends who asked, and as a technical challenge: OCR, barcodes and Spring Boot 4.

Decisions

  • Pluggable OCR.
  • Three input paths: label photo, barcode and manual search.
  • An edge proxy and a wake-up ping.
  • Private by design: search history stays in the browser.
Discogs vinyl record search utility
Live & Active

Discogs Utility

Vinyl record search and collection utility powered by the Discogs API — search by artist, release, or label and explore results in real time.

A React frontend on Netlify and a Spring Boot API in Docker on a self-hosted server.

Frontend

  • React 19
  • TypeScript
  • Vite
  • Tailwind
  • Discogs API

Backend

  • Java 24
  • Spring Boot 4.1
  • Docker
More

Problem

  • Pricing a collection in bulk, and crate-digging search.

Outcomes

  • Oddball Records later reused it to enrich its albums.

Decisions

  • Batch queries.
  • Marketplace prices.
The Studio on stream.rgbnathan.co.uk
Live & Active

Studio

The Studio, where the stream’s OBS overlays are built and managed. Part of my stream site, stream.rgbnathan.co.uk.

Part of the stream site: its React frontend and a Spring Boot API in Docker on a self-hosted server.

Frontend

  • React 19
  • Vite
  • Tailwind
  • TanStack Query

Backend

  • Java 25
  • Spring Boot 4
  • PostgreSQL
  • Docker
More

Decisions

  • OBS overlays built and managed in the browser.

Creator Sites

Stream site built from the creator site template
Live & Active

Creator Site Template

A template for streamer and VTuber sites, with a no-code admin dashboard, OBS overlays and invites. My stream site, Splatonoodles and alsz are each built from it.

A React frontend and a Spring Boot API in Docker on a self-hosted server, which each site starts from.

Frontend

  • React 19
  • Vite
  • Tailwind
  • TanStack Query

Backend

  • Java 25
  • Spring Boot 4
  • PostgreSQL
  • Docker
More

Decisions

  • A no-code admin dashboard.
  • Studio and OBS overlays.
  • One template for many creators’ sites.
  • Invites.

Built from this template

  • stream.rgbnathan.co.uk screenshot

    stream.rgbnathan.co.uk

    My own streaming site.

    • Studio

      The Studio, where the stream’s OBS overlays are built and managed.

  • Splatonoodles screenshot

    Splatonoodles

    Self-hosted website for VTuber Splatonoodles — stream schedule with a live countdown, art gallery, model showcase and clips.

    Nathan did an amazing job creating the website for my brand. Very attentive to detail and constantly providing me with updates and progress snapshots. Listened to my suggestions and implemented everything amazingly. Highly recommend.

    Splatonoodles
  • alsz screenshot

    alsz

    Website for Twitch streamer alsz — live/offline Twitch player, weekly schedule, avatar and games showcase, and a community hub.

    Nathan has been amazing to work with. The site is amazing, it looks so good and has everything I could ever want on there, and they’ve made it dummy proof to use so that even a simpleton like me can make changes. I have received a huge amount of positive feedback about the site, from the people who have visited it. I’m so impressed with their work.

    alsz

Also Worked On

Screenshot of Do They Pay On Time?

Do They Pay On Time?

A crowdsourced platform for freelancers and contractors to report whether clients pay invoices on time — helping the community avoid late payers.

My contribution

Contributed to the initial project setup, including deployment, database configuration, and fullstack implementation across the backend and frontend.

Labs

  • Shiny Pokémon Twitch Bingo

    A local, offline stream overlay that marks shiny catches on a bingo board.

    • Go

What I build

Creator and VTuber sites

Sites for streamers and VTubers, built from my creator site template and run from a no-code admin dashboard.

  • stream.rgbnathan.co.uk
  • Splatonoodles
  • alsz

Stream tools

The Studio, where the stream’s OBS overlays are built and managed.

  • Studio on stream.rgbnathan.co.uk

Community web apps

Web apps that bring a community together, from events and playlists to shared lists to track.

  • Oddball Records
  • 1001 Everything