API core
The Rust and Axum service every other part of the platform talks to.
A skill platform built solo as a polyglot architecture, with a public governance layer around it. Open beta January 2027.
Skilluv is the largest body of work in this archive and the only one that spans every dimension of it. A Rust backend, a Svelte frontend and admin, and a Python AI service that talks to the Rust core over gRPC when an answer is needed now and over a Redis queue when it is not. The core is 183,000 lines of Rust, 4,544 tests across 233 files and 468 migrations; the AI service is around 11,000 lines of Python.
The AI service does the work that makes the platform more than a course catalogue: challenge generation through an LLM, plagiarism detection that combines syntax trees with embeddings across eight languages, scored matching between talent and companies, and media processing for replays. Each of its methods has a latency budget written before it is served: under fifteen seconds at the median for a code review by a model, under two seconds for plagiarism detection, which is deterministic and owes nothing to a model. Going over blocks the release rather than being discovered by a learner.
Splitting the admin panel out from the product is the decision that shaped the rest. An operations team and a learner have almost nothing in common in what they need to see, and merging them would have produced one interface permanently compromised for both.
The governance repositories matter as much as the code. A community becomes governable at the point where its decisions stop living in private conversations.
The decision I reversed: I wanted everything to run on my own server, down to the development environments, Blender and Penpot. It worked for one user and for no others. I stopped in time, but late, and it is the kind of ambition that has to be judged on what the next thousand users cost rather than on whether it stands up on the first day.
The immediate path and the deferred path are two paths, not one with a timeout. A code review takes ten seconds or so and somebody is waiting in front of it; processing a replay takes minutes and nobody should be. Each method has a latency budget written before it is served, and going over blocks the release.


The Rust and Axum service every other part of the platform talks to.
The SvelteKit surface learners actually use.
Moderation, catalog and operations, kept as a standalone build rather than a privileged corner of the product.
Challenge generation, plagiarism detection across eight languages, talent matching and media processing.
One reference implementation per track, each a working project rather than a template.
Four public repositories that make the decisions, the rules and the arrivals visible instead of implicit.