Eyuan
open main menu

# Projects

Things I've built. Mostly rewriting existing software from scratch to understand how it actually works.

Systems Programming

sequel [Rust] [github]

A from-scratch SQLite parser and query engine. Reads raw .db files byte-by-byte, manually parses B-trees, and extracts rows. Supports SELECT, WHERE, COUNT(*), and index optimization with B-tree traversal. Part of the "rewrite everything in Rust" movement - real devs read hex dumps and parse varints manually.

rego [Go] [github]

A lightweight Redis server implementation compatible with standard Redis clients. Full RESP protocol support, key-value ops with expiry, transactions (MULTI/EXEC), master-slave replication, RDB file parsing and persistence, and Redis Streams (XADD, XRANGE, XREAD). Basically Redis but I wrote it.

hrust [Rust] [github]

Simple HTTP/1.1 server with GET/POST handling, file upload/download, User-Agent echo, gzip compression support, and multithreaded request handling. Nothing fancy, just works.

shell [Rust] [github]

Single-binary shell. Pipelines with |, redirection (>, >>, 2>), tab-completion with $PATH lookups, persistent history. If you want a fancy terminal emulator or 500 features you're in the wrong place - this just works.

Languages & Low-Level

ruskey [Rust] [github]

Rust implementation of the Monkey programming language interpreter, based on "Writing An Interpreter In Go" by Thorsten Ball. Full lexer and parser done, working on the evaluator. C-like syntax, first-class functions, closures, a simple object system. Learning interpreters the hard way.

Reinventing the wheel on purpose. A rewrite of the C standard library - string type checking, memory management, linked list manipulation functions. Because understanding what's under the hood matters.

Graphics

rayrust [Rust, WGSL, WebGPU] [github]

Path tracer with both CPU and GPU acceleration. Monte Carlo sampling, materials (Lambertian diffuse, metal, dielectric glass), camera with depth of field and adjustable FOV, cross-platform GPU via wgpu. Works on your shitty laptop if it has Vulkan/Metal/DX12 - otherwise use your poor CPU.

lrle [Rust, WGSL, wgpu] [github]

GPU-accelerated 3D terrain visualizer. Loads heightmap data from FDF files and renders them in real-time with an orbital camera system, adjustable height scaling, and an egui stats panel. Cross-platform GPU via wgpu. WIP but it works.

Tools

pew [Go] [github]

CLI for dumping source code into a single markdown file for LLMs. Auto-detects and skips binary files, generates tree-style directory structure, respects .pewc gitignore-style patterns. Install with brew tap yuann3/pew && brew install pew and you're good.