Hello š my name is Tristan, I am a
Full Stack Software Engineer
Specializing in TS/Node and Golang
HTML
CSS
Javascript
Typescript
Golang
I am skilled in HTML, CSS, JavaScript, and TypeScript, and have used them to develop web applications and user interfaces. I also have some experience with C and Python for specific projects.
Projects

Zog - Zod inspired simple schema validationlibrary
Golang
Zog is a schema builder for runtime value parsing and validation. Define a schema, transform a value to match, assert the shape of an existing value, or both. Zog schemas are extremely expressive and allow modeling complex, interdependent validations, or value transformations.
Killer Features:
- Concise yet expressive schema interface, equipped to model simple to complex data models
- Zod-like API, use method chaining to build schemas in a typesafe manner
- Extensible: add your own Tests and Schemas
- Rich errors with detailed context, make debugging a breeze
- Fast: Zog is one of the fastest Go validation libraries. We are just behind the goplayground/validator for most of the govalidbench benchmarks.
- Built-in coercion support for most types
- Zero dependencies!
- Four Helper Packages
- zenv: parse environment variables
- zhttp: parse http forms & query params
- zjson: parse json
- i18n: Opinionated solution to good i18n zog errors

Askald - AI Troubadour for D&Dwebsite
Typescript
Golang
PostgreSQL
Askald is an automatic music director for tabletop RPG sessions that listens to gameplay and switches soundtracks in real-time based on what's happening. The system transcribes speech, classifies the scene mood (action, creepy, romance, comedy, etc.), and plays the appropriate music without manual intervention.
I built the frontend with Next.js, TRPC, Drizzle ORM (Postgres), and Tailwind. Users can create "jukebox" configurations that map scene categories to Spotify playlists or custom uploaded tracks. The Spotify integration controls the user's active Spotify player (desktop, mobile, or web), allowing the system to automatically switch tracks on whatever device they're using.
Audio is streamed via websockets to the Go backend that handles long-lived connections for 4+ hour sesssions. During downtime the service sleeps and the frontend avoids sending unnecesary audio down to the backend via custom web assembly implementation of the Moattar et all algorithm or Silero VAD.
Tailwind Merge Golibrary
Golang
Tailwindcss
Utility function to efficiently merge Tailwind CSS classes in Golang without style conflicts. This library aims to be as close as possible to a 1:1 copy of the super popular original dcastil/tailwind-merge library written in JavaScript.
- Supports Tailwind v3.0 up to v3.4
- Extend the default configuration
- Provide your own caching solution
- And more!

About Me
I find great joy in building complex projects quickly that is why I have mostly worked in fast paced environements. I am the kind of person who seizes every opportunity to learn something new. That is why I enjoy challenges. They are some of the best wayās to learn quickly and grow faster. I am interested in many things but very passionate about linux, open source and reading.