I'm mid-port on two things right now: a Pascal solver called YASS, going to Rust, for the Sokoban work on tilebasedworlds.com, and BurntSushi's fst crate, going from Rust to Nim, for the search layer behind nlpcitations.com. Different source languages, different target languages, …
I've been building a Sokoban editor and solver for tilebasedworlds.com — a side project for tile-based puzzle tools. The solver ships entirely in the browser as a WASM binary, which meant the first real question was not "how do I implement A*?" but "how do I represent a level?" …