Skip to content
View fobiat's full-sized avatar
  • Ohmic Labs
  • Cambridge, UK
  • 19:21 (UTC +01:00)

Block or report fobiat

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.

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
fobiat/README.md

fobiat

Kyle

Rust, real-time audio, electronics, and C# game tooling. Mostly things I needed and couldn't find. The short versions are below, ordered by how far along each one is; the long ones live at fobiat.dev.

s&box MCP Server & AI Skill

Two halves of the same problem, and the one thing here you can install today.

s&box borrows GameObject and Component from Unity and then diverges nearly everywhere else, so a coding agent writes MonoBehaviour and void Update() into a Source 2 project and nothing warns you. The skill is 17 reference files that teach an agent the real API, every entry traceable to engine source at a named version. The MCP server is 18 tools that ask the running editor what is actually true, for the afternoons where you edit a file and the engine never notices.

Released on sbox.game as fobiat.sbox_mcp_server, or clone the repo. Written up at fobiat.dev.

MIT, engine 26.08.05.

Applejack

A scarcity-driven city roleplay gamemode for S&box, rebuilt from scratch in C# on Source 2, against a live editor from the first commit. The Garry's Mod original survives as a behavioural reference only: its gameplay values are canon, its implementation is not. The most active thing here day to day.

The repo stays private while the framework takes shape, but the design docs, wireframes, and hosting guides are already public at fobiat.dev/applejack.

Rivet

Git-native workstation snapshots for Linux and macOS: rebuild your machine from a commit. Rivet records the packages you installed on purpose and the config you approve, not a disk image. Restores work across distro families, and secrets stay out unless you explicitly vault them.

Not out yet, but close: container tests across Arch, Debian, Ubuntu and Fedora, plus a mutation-tested roundtrip suite. The site and docs are already live at fobiat.dev/rivet, and that's where the release will land.

Rust, MIT OR Apache-2.0.

fobiat.dev

This domain, and the identity above. An Astro landing page on Cloudflare Workers, mounting five other projects' sites underneath it at their own paths, plus a devlog written up as things ship. The banner at the top of this file is generated by scripts/brand.mjs over there and copied into assets/ here.

Source is public; the blog is a separate, currently private repo.

Everything else

ProjectWhat it is
openBPMTap-tempo BPM counter and beatmatch assistant for vinyl DJing on an ESP32: booth-legible digits, pitch %, and a drift timer so you know how long before your decks fall apart. Source is public.
openDVSAn open Digital Vinyl System: a clean-room no_std timecode engine in Rust, a freely pressable timecode vinyl format, and open hardware that doubles as a USB audio interface. Private while the format settles.
Ohmic LabsA modular handheld instrument platform on one ESP32 + OLED + encoder core: a PT100 RTD simulator first, a 4-20 mA loop calibrator next.
rivet-workstationAn AI-first workstation: ws up turns a YAML file into a running project workspace (terminals, services, logs, AI assistant panes), owned by a daemon and restorable onto a fresh machine via Rivet. Rust, private, and the quietest of these right now.
k3s-homelabThe home cluster: k3s and Flux, deployed from GitHub Actions. Stable infrastructure rather than active development.

kyle@fobiat.dev · fobiat.dev/contact

Pinned Loading

  1. home-opshome-opsPublic

    Single-node Kubernetes homelab. Talos Linux, Flux, SOPS+age, Tailscale-first.

    Shell 5

  2. openBPMopenBPMPublic

    Tap-tempo BPM counter and beatmatch assistant for vinyl DJing on an ESP32 — pitch %, drift timer, octave-aware matching, and a WiFi record library.

    C++ 1