Skip to content

Tech Stack

What I use day to day, at work and for music.

Languages

TypeScript
The default for frontend and backend work.
Go
Payment service backends and high-throughput APIs.
Rust
Native desktop tools.
JavaScript
Scripts and older codebases.

Frontend

React
Component architecture for every web interface I build.
Next.js
App Router, server components, static and server rendering.
React Native
Cross-platform mobile apps.
Tailwind CSS
Styling, including this site.
Tauri
Cross-platform desktop apps.

Platform

Module Federation
Composing independently deployed micro-frontends into one product.
Changesets
Versioning and changelogs for shared packages.
tsup
Building tree-shakeable libraries.
Vitest
Unit tests for components and hooks.
GitHub Actions
CI and package publishing.

Backend

Node.js
API servers, scripts and tooling.
Express
REST APIs.
MongoDB
Document storage for application data.
MySQL
Relational data.

State

Redux
Large apps with complex, shared state.
Zustand
Everything smaller.

Security

Auth0
Identity and access management.
OWASP
The baseline for every payment flow.
PCI DSS
Card payment compliance.

Music

Ableton Live
Production and arrangement.
MainStage
Live keyboard rigs.
Studio One
Recording.
Omnisphere
Synths and pads.
Kontakt
Sampled instruments.
Korg Triton
Hardware workstation.