farkhad@frkhd:~/works main

farkhad
bennett

i write programs the way other people write playlists. mostly small, mostly rust, mostly on a weekend. by the time you scroll the bottom of this page, you will have read the names of forty of them.

age 19 school eth zürich (freshman) based zürich · sometimes almaty capacity q3 2026, 1-2 clients contact hello@frkhd.com
~/works -- zsh
manifesto

by the time you scroll to the bottom of this page, you will have read the names of about forty programs i have written. most in rust. most on a weekend. some in a single sitting. the rest of this page is a footnote to that fact.

64
public repos
on github
233
days
since the account opened
247
commits
in the last 30 days
11
languages
used in production
selected work

eight projects, in roughly the order you should read them.

archive

forty things, give or take.

drift/ rust shipping sql linter, 34ms vs 15s sqlfluff → tape/ rust shipping record/replay runtime, also a language → anchor/ rust shipping local llm proxy + cache + budget tracker → jitvm/ rust learning bytecode vm with one-pass x86-64 jit → mlkem-rs/ rust crypto pure-rust fips 203 ml-kem → mlkem-tls/ rust crypto x25519mlkem hybrid kem for tls 1.3 → nanokern/ c kernel multitasking x86-64 kernel in 785 loc → vantage/ swift shipping macos menubar app, swift-native → skl/ rust ai cross-runtime ai skills registry → pluvgo/ rust shipping fast neovim plugin manager → bashward/ rust ai checkpoint + rewind for bash side effects → skill-scan/ rust ai prompt-injection scanner for ai agents → pqfetch/ rust crypto tls post-quantum readiness scanner → nanolm/ py learning tiny transformer trained from scratch → halo/ rust shipping cli ascii halo, just for fun → cove/ go shipping private git mirror that survives github → cram/ rust shipping spaced repetition over your terminal → tempo/ rust shipping minute-precise time tracker → rabbitmark/ rust shipping bookmark manager that does not nag → typesprint/ web shipping 60-second typing test, browser-only → llmdiff/ rust ai diff that knows code from llm output → commitgen/ rust ai commit messages from your diff → ephemeral/ web shipping self-deleting messages, e2e → foldlab/ web learning origami-aware geometry sandbox → goalgraph/ web shipping goals as a directed graph → mailsift/ rust shipping sieve filter compiler → nowhere/ web shipping a place that is not on the map → pixels/ web learning cellular automata in your browser → pulse/ rust shipping one terminal window for local dev servers → qubit/ rust learning two-qubit quantum sandbox → raytrace1k/ c learning ray tracer in 1024 bytes → shh/ rust shipping shell history with mtls → spin/ web shipping lights-out puzzle in css → twine/ rust shipping two-cursor collab editor → ztail/ rust shipping tail -f for redis pubsub → chessdrift/ web shipping chess-960 against your past self → dolater/ web shipping task manager that respects bandwidth → cmdvault/ py shipping commands you keep googling, fuzzy-searched → agent-budget/ rust ai soft + hard caps for agent runs → gemini-proxy/ web ai cf worker proxy for gemini api →
$ cat ~/now.md
building tape v0.2, drift v0.19, anchor v0.1
reading remarque, "три товарища" (third pass), 4000 weeks by burkeman
listening lord huron, ludovico einaudi, mostly background quiet
thinking why dev tools rarely launch on hn cold; whether to keep starting repos
eating too much coffee, mostly v60 in the morning
not doing starting new public repos for the next ninety days

→ the longer version of this page

say hi

$ git log --author=f4rkh4d --since="1 year ago" | wc -l 383
0 on 2025-10-05 0 on 2025-10-06 0 on 2025-10-07 0 on 2025-10-08 0 on 2025-10-09 0 on 2025-10-10 0 on 2025-10-11 0 on 2025-10-12 0 on 2025-10-13 0 on 2025-10-14 0 on 2025-10-15 0 on 2025-10-16 0 on 2025-10-17 0 on 2025-10-18 0 on 2025-10-19 0 on 2025-10-20 0 on 2025-10-21 0 on 2025-10-22 0 on 2025-10-23 0 on 2025-10-24 0 on 2025-10-25 0 on 2025-10-26 0 on 2025-10-27 0 on 2025-10-28 0 on 2025-10-29 0 on 2025-10-30 0 on 2025-10-31 0 on 2025-11-01 0 on 2025-11-02 0 on 2025-11-03 0 on 2025-11-04 0 on 2025-11-05 0 on 2025-11-06 0 on 2025-11-07 0 on 2025-11-08 0 on 2025-11-09 0 on 2025-11-10 0 on 2025-11-11 0 on 2025-11-12 0 on 2025-11-13 0 on 2025-11-14 0 on 2025-11-15 0 on 2025-11-16 0 on 2025-11-17 0 on 2025-11-18 0 on 2025-11-19 0 on 2025-11-20 0 on 2025-11-21 0 on 2025-11-22 0 on 2025-11-23 0 on 2025-11-24 0 on 2025-11-25 0 on 2025-11-26 0 on 2025-11-27 0 on 2025-11-28 0 on 2025-11-29 0 on 2025-11-30 0 on 2025-12-01 0 on 2025-12-02 0 on 2025-12-03 0 on 2025-12-04 0 on 2025-12-05 0 on 2025-12-06 0 on 2025-12-07 0 on 2025-12-08 0 on 2025-12-09 0 on 2025-12-10 0 on 2025-12-11 0 on 2025-12-12 0 on 2025-12-13 0 on 2025-12-14 0 on 2025-12-15 0 on 2025-12-16 0 on 2025-12-17 0 on 2025-12-18 0 on 2025-12-19 0 on 2025-12-20 0 on 2025-12-21 0 on 2025-12-22 0 on 2025-12-23 0 on 2025-12-24 0 on 2025-12-25 0 on 2025-12-26 0 on 2025-12-27 0 on 2025-12-28 0 on 2025-12-29 0 on 2025-12-30 0 on 2025-12-31 0 on 2026-01-01 0 on 2026-01-02 0 on 2026-01-03 0 on 2026-01-04 0 on 2026-01-05 0 on 2026-01-06 0 on 2026-01-07 0 on 2026-01-08 0 on 2026-01-09 0 on 2026-01-10 0 on 2026-01-11 0 on 2026-01-12 0 on 2026-01-13 0 on 2026-01-14 0 on 2026-01-15 0 on 2026-01-16 0 on 2026-01-17 0 on 2026-01-18 0 on 2026-01-19 0 on 2026-01-20 0 on 2026-01-21 0 on 2026-01-22 0 on 2026-01-23 0 on 2026-01-24 0 on 2026-01-25 0 on 2026-01-26 0 on 2026-01-27 0 on 2026-01-28 0 on 2026-01-29 0 on 2026-01-30 0 on 2026-01-31 0 on 2026-02-01 0 on 2026-02-02 0 on 2026-02-03 0 on 2026-02-04 0 on 2026-02-05 0 on 2026-02-06 0 on 2026-02-07 0 on 2026-02-08 0 on 2026-02-09 0 on 2026-02-10 0 on 2026-02-11 0 on 2026-02-12 0 on 2026-02-13 1 on 2026-02-14 0 on 2026-02-15 0 on 2026-02-16 0 on 2026-02-17 0 on 2026-02-18 0 on 2026-02-19 0 on 2026-02-20 0 on 2026-02-21 0 on 2026-02-22 0 on 2026-02-23 0 on 2026-02-24 0 on 2026-02-25 0 on 2026-02-26 0 on 2026-02-27 0 on 2026-02-28 0 on 2026-03-01 0 on 2026-03-02 0 on 2026-03-03 0 on 2026-03-04 0 on 2026-03-05 0 on 2026-03-06 0 on 2026-03-07 0 on 2026-03-08 0 on 2026-03-09 0 on 2026-03-10 0 on 2026-03-11 0 on 2026-03-12 0 on 2026-03-13 0 on 2026-03-14 0 on 2026-03-15 0 on 2026-03-16 0 on 2026-03-17 0 on 2026-03-18 0 on 2026-03-19 0 on 2026-03-20 0 on 2026-03-21 0 on 2026-03-22 0 on 2026-03-23 0 on 2026-03-24 0 on 2026-03-25 0 on 2026-03-26 0 on 2026-03-27 0 on 2026-03-28 0 on 2026-03-29 0 on 2026-03-30 0 on 2026-03-31 0 on 2026-04-01 0 on 2026-04-02 0 on 2026-04-03 0 on 2026-04-04 0 on 2026-04-05 0 on 2026-04-06 0 on 2026-04-07 0 on 2026-04-08 0 on 2026-04-09 0 on 2026-04-10 0 on 2026-04-11 0 on 2026-04-12 0 on 2026-04-13 0 on 2026-04-14 0 on 2026-04-15 0 on 2026-04-16 0 on 2026-04-17 0 on 2026-04-18 0 on 2026-04-19 1 on 2026-04-20 1 on 2026-04-21 3 on 2026-04-22 0 on 2026-04-23 0 on 2026-04-24 0 on 2026-04-25 1 on 2026-04-26 0 on 2026-04-27 0 on 2026-04-28 1 on 2026-04-29 0 on 2026-04-30 3 on 2026-05-01 48 on 2026-05-02 18 on 2026-05-03 6 on 2026-05-04 2 on 2026-05-05 0 on 2026-05-06 1 on 2026-05-07 0 on 2026-05-08 2 on 2026-05-09 0 on 2026-05-10 1 on 2026-05-11 0 on 2026-05-12 0 on 2026-05-13 0 on 2026-05-14 0 on 2026-05-15 47 on 2026-05-16 1 on 2026-05-17 0 on 2026-05-18 0 on 2026-05-19 3 on 2026-05-20 2 on 2026-05-21 0 on 2026-05-22 0 on 2026-05-23 0 on 2026-05-24 0 on 2026-05-25 0 on 2026-05-26 0 on 2026-05-27 0 on 2026-05-28 0 on 2026-05-29 0 on 2026-05-30 0 on 2026-05-31 0 on 2026-06-01 0 on 2026-06-02 0 on 2026-06-03 0 on 2026-06-04 0 on 2026-06-05 8 on 2026-06-06 3 on 2026-06-07 0 on 2026-06-08 0 on 2026-06-09 0 on 2026-06-10 0 on 2026-06-11 8 on 2026-06-12 24 on 2026-06-13 5 on 2026-06-14 0 on 2026-06-15 0 on 2026-06-16 0 on 2026-06-17 0 on 2026-06-18 0 on 2026-06-19 0 on 2026-06-20 0 on 2026-06-21 0 on 2026-06-22 0 on 2026-06-23 25 on 2026-06-24 11 on 2026-06-25 24 on 2026-06-26 31 on 2026-06-27 8 on 2026-06-28 28 on 2026-06-29 7 on 2026-06-30 0 on 2026-07-01 2 on 2026-07-02 0 on 2026-07-03 57 on 2026-07-04 0 on 2026-07-05 0 on 2026-07-06 0 on 2026-07-07 0 on 2026-07-08 0 on 2026-07-09 0 on 2026-07-10 0 on 2026-07-11 0 on 2026-07-12 0 on 2026-07-13 0 on 2026-07-14 0 on 2026-07-15 0 on 2026-07-16 0 on 2026-07-17 0 on 2026-07-18 0 on 2026-07-19 0 on 2026-07-20 0 on 2026-07-21 0 on 2026-07-22 0 on 2026-07-23 0 on 2026-07-24 0 on 2026-07-25 0 on 2026-07-26 0 on 2026-07-27 0 on 2026-07-28 0 on 2026-07-29 0 on 2026-07-30 0 on 2026-07-31 0 on 2026-08-01 0 on 2026-08-02 0 on 2026-08-03 0 on 2026-08-04 0 on 2026-08-05 0 on 2026-08-06 0 on 2026-08-07 0 on 2026-08-08 0 on 2026-08-09 0 on 2026-08-10 0 on 2026-08-11 0 on 2026-08-12 0 on 2026-08-13 0 on 2026-08-14 0 on 2026-08-15 0 on 2026-08-16 0 on 2026-08-17 0 on 2026-08-18 0 on 2026-08-19 0 on 2026-08-20 0 on 2026-08-21 0 on 2026-08-22 0 on 2026-08-23 0 on 2026-08-24 0 on 2026-08-25 0 on 2026-08-26 0 on 2026-08-27 0 on 2026-08-28 0 on 2026-08-29 0 on 2026-08-30 0 on 2026-08-31 0 on 2026-09-01 0 on 2026-09-02 0 on 2026-09-03 0 on 2026-09-04 0 on 2026-09-05 0 on 2026-09-06 0 on 2026-09-07 0 on 2026-09-08 0 on 2026-09-09 0 on 2026-09-10 0 on 2026-09-11 0 on 2026-09-12 0 on 2026-09-13 0 on 2026-09-14 0 on 2026-09-15 0 on 2026-09-16 0 on 2026-09-17 0 on 2026-09-18 0 on 2026-09-19 0 on 2026-09-20 0 on 2026-09-21 0 on 2026-09-22 0 on 2026-09-23 0 on 2026-09-24 0 on 2026-09-25 0 on 2026-09-26 0 on 2026-09-27 0 on 2026-09-28 0 on 2026-09-29 0 on 2026-09-30 0 on 2026-10-01 0 on 2026-10-02 0 on 2026-10-03 0 on 2026-10-04 0 on 2026-10-05
click any cell to see the count
$ awk '/today/' ./streak
0d
day streak · max 7d
$ when --tz=zurich
sun
mon
tue
wed
thu
fri
sat
00 06 12 18
$ git log -5 --pretty=oneline
less more · updated 2026-10-04 22:17Z