Skip to content
View catchouli's full-sized avatar
💭
type 2 invested entity
💭
type 2 invested entity

Block or report catchouli

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
catchouli/README.md

Hi there 👋

My name is Cat and I'm a lead developer from the UK.

A few of my specialities are:

  • Rust, C++, C#, Python, Haskell (but I'm known for being able to use just about any language :P)
  • High performance applications such as 3d graphics, GIS and data processing
  • GPU programming, from CUDA ray tracing to real-time renderers
  • Building end-to-end software and features that actually work and solve problems
  • Cloud and microservices architectures with Kubernetes, Docker and Azure
  • Building software with AI, building AI tooling and MCP servers, and lately learning to train my own language models from scratch

I've been into neural nets since well before transformers: neuron is a feed-forward net trainer I wrote from scratch in Haskell back in 2016.

Some things I've made that I'm fond of:

  • CatApp: the organiser I use to keep my life and projects on track, with AI agents posting updates over MCP and an assistant you can talk to
  • VolumeRender: a sparse voxel octree ray tracer in CUDA that handles refraction through heterogeneous volumes (my dissertation)
  • better_tactics: a chess tactics trainer with spaced repetition
  • instructive-chess: R&D in turning narrated chess videos into data an AI can learn from. Computer vision reads every game, clock and rating off YouTube, a benchmark checks each one against the real game, and the masters' commentary is kept timed to their moves. It's a searchable database of instructive games for now, and next up is an AI opening and position instructor built on it
  • dreamfield: a PS1-style first-person RPG in Rust, with its own engine written by hand before AI tools. I spent a long time researching how the PlayStation actually drew things and reproducing it faithfully: vertices snapping to the pixel grid, affine texture warping, the PS1 GPU's own dither matrix, and a composite video pass that bleeds colour like an old CRT

And from further back, coment: a header-only C++ entity-component-system library that picked up 54 stars.

See https://cat.bio/ for my full profile 👍

Catchouli's github stats

Pinned Loading

  1. CatApp CatApp Public

    A little personal organiser for my life and too many projects: statuses, next steps, checklists and notes, with a to-do list, a phone-friendly web app, a CLI, and MCP so AI agents can post updates.…

    Rust

  2. VolumeRender VolumeRender Public

    A real-time CUDA ray tracer for sparse voxel octrees that can refract light through volumes whose insides vary. My BSc dissertation (2014).

    C++ 8

  3. flex flex Public

    A media player and organiser that scans your local libraries and sorts everything into Movies, Shows, Anime and Music collections, and plays YouTube too, with no ads and sponsors skipped.

    Rust

  4. better_tactics better_tactics Public

    Chess tactics trainer with spaced repetition

    Rust 38

  5. instructive-chess instructive-chess Public

    R&D in turning narrated chess videos into AI training data: computer vision reads every game, clock and rating off YouTube, benchmarked against the real games, with each master's commentary timed t…

    Python

  6. dreamfield dreamfield Public

    A ps1-aesthetic 3D first-person RPG I'm making in Rust

    Rust 2