Code Resurrection 2026 — Port Mortem: Reviving Forgotten Code, Rebuilding Digital Futures

🆁🅴🆂🆄🅻🆃🆂

Code Resurrection 2026 — Port Mortem ran July 31 to August 3, 2026, a 72-hour online sprint with one rule: pick a real, battle-tested repository, rebuild it in a language it was never written in, and prove the rewrite still behaves. 148 teams took on C, TypeScript, Python, JavaScript and Go libraries and turned them into verified ports in Rust, Go and C++. The bar was honest evidence over confident claims, and the top of the field cleared it convincingly, with the leading submissions scoring above 4.2/5.00.

✯ Grand Prize Winners

  • 1st Place — 0xicbor (Team: Cause of Death). Intel's tinycbor (6,456 lines of C, RFC 8949) rewritten in Rust, keeping the C ABI byte for byte so existing callers link against it unchanged. Final score: 4.29/5.00. "A deeply impressive submission. What stands out is not just the scale of verification, but the team's judgment around ABI compatibility, documented unsafe boundaries, and honest performance tradeoffs." — Duygu Unlu, Judge
  • 2nd Place — cron-parser-go (Team: Team Rocket). A Go port of the TypeScript cron-parser, resolving cron expressions to real run times across timezones and daylight-saving transitions. Final score: 4.27/5.00. "Incredible test integration via WASM: building a WebAssembly bridge solely so the original TypeScript test suite can run against the Go backend is brilliant." — Vijay Anthony Richard, Judge
  • 3rd Place — Mnemo Arcade (Team: Rust in Peace). Mnemonist's JavaScript data structures — tries, KD-trees, LRU caches, heaps, bit vectors — ported to safe Rust, with a live arcade demo that turns the port into an inspectable playground. Final score: 4.23/5.00. "499 out of 499 original tests passing, and that live arcade demo is such a fun touch. Awesome effort across the board." — Janardhana Naidu Kola, Judge

✯ Bug Catcher & Write-Up Side Quest

  • 🐛 Bug Catcher — cron-parser-go (Team: Team Rocket). Awarded for the most consequential latent bugs surfaced in the original through differential testing, with upstream fixes filed and merged.
  • ✍️ Write-Up, 1st — Prince Panchani. Porting bignumber.js to Rust: 139,907 real calls replayed for byte-identical verification, 14 concrete bugs documented, and regressions reported honestly.
  • ✍️ Write-Up, 2nd — Devansh Kant Kashyap. Porting JSBI to C++: four root-caused bugs and a benchmark with no consistent winner that refused to cherry-pick the good run.
  • ✍️ Write-Up, 3rd — Yash Vardhan Shukla. Porting Python's sortedcontainers to Rust: a real self-referential borrow-checker bug and a full p99 table that openly reports a regression.

✯ Excellence Tier

  • blackfriday-2-rust (Doniyor's Team) — Go's Blackfriday v2 Markdown processor rebuilt in Rust, filling a real gap where existing Rust crates only target CommonMark. Final score: 4.23/5.00
  • semver-rs (Port_lens) — npm's node-semver ported to 100% safe Rust, preserving observable behavior. Final score: 4.22/5.00
  • cwpack-rs (solo built) — CWPack, an ultra-fast C MessagePack library, resurrected as safe Rust with forbid(unsafe_code). Final score: 4.20/5.00
  • decimal-go (Sundram Tiwari) — Exact decimal arithmetic for Go, byte-for-byte compatible with decimal.js. Final score: 4.20/5.00
  • pyfuse (Semicolonoscopy) — rapidfuzz-style fuzzy string matching ported to Rust. Final score: 4.16/5.00
  • rs-parsimonious (Team Parsimonious) — A from-scratch Rust reimplementation of Python's parsimonious PEG parser. Final score: 4.15/5.00

✯ Standout Innovations

  • tinycolor-rs (AIBros) — TinyColor ported to Rust and compiled to a live, in-browser color lab for exploring conversions and palettes.
  • decimaljs-go (Code Resurrector) — A Go port of decimal.js delivering arbitrary-precision decimal math without float64 error, verified against the original suite.

✯ Evaluation Panel

Submissions were assessed by a panel of engineers from Nvidia, Amazon, Google, IBM and leading AI companies, scored on the published criteria: Functionality & Reliability (40%), Behavioral Equivalence (30%), Code Quality (20%), and Innovation (10%). Featured judges:

  • Alok Kumar — Nvidia
  • Maksim Zolotarev — Tabby
  • Kirill Starkov — Refact.ai
  • Vijay Anthony Richard — Amazon
  • Jolly Shah — Google
  • Anshul Kumar Purohit — IBM
  • Karthik Kapula — ICS Global Soft Inc

✯ Participant Write-Ups

The Odyssey of FaFa, Porting natsort to Rust taught me that "it compiles" is the easy 5%, The test suite never knew it was running on Rust, Port Mortem Track C: We rewrote isaacs/minimatch (TypeScript) in Go in 48h, I now know more about JavaScript’s regex behavior than I know about my life after graduation. Anyway, I ported Picomatch to Rust., I ported a JavaScript colour library to Rust and made the original test suite run against it, unmodified, Porting decimal.js to Go for Hackathon Raptors, How We Ported Python’s natsort to Rust — And the 133,000 Fuzz Inputs That Proved Us Wrong, I Ported a JavaScript Markdown Parser to Rust in 72 Hours — Here's What Actually Broke, Porting TinyColor to Go took about 11 hours. Proving that it behaved exactly like the JavaScript implementation took several times longer., I ported decimal.js to Go and ran its own 22,658 tests against the result. Four bugs were mine. One was theirs., Port Mortem 2026: Engineering a Behaviorally Equivalent Rust Port of python-semanticversion, I Ported python-semanticversion to Rust in 72 Hours: What Broke, How I Proved Parity, and the 6-Hour Edge Case, Porting C Code to Safe Rust: 22% Performance Gain, From Python to Rust: Rewriting a Real Open Source Project for Port Mortem 2026, I ported croniter to Rust and got 228/228. That number proved nothing, Porting MPack C Library to Pure Python for Hackathon, 41,088 divergences, and four tests that tested nothing, A few days ago, my team and I wrapped up our first porting hackathon and it changed our perspective on AI-assisted coding, My port passes 710 out of 710. Here is everything that number does not tell you., I ported Picomatch to Rust. It passed 1,977 tests and lost the benchmark by 18x, I Ported an 830-Star Python Library to Rust and the Fuzzer Found 12 Bugs — All of Them Mine 🦀, We Rewrote a Cron Library in Rust and then Missed the Deadline Doing It, Porting decimal.js to Go: What Broke and How We Found It, We ported the JS library bytes.js to native Go (GoBytes), 139,907 Calls Later: What It Actually Takes to Port a Numerical Library from JavaScript to Rust, C to Rust Port, The bug that differential fuzzing cannot find, 140 Bugs Were Hiding in One Function, and My Tests Couldn't See Any of Them, Porting qs to Go: an honest account, My port of Python SemVer to Golang for my First Hackathon, I Ported a JS Library to Go — Then Spent Twice as Long Proving It Actually Worked, Porting a Python PEG parser to Rust in 72 hours, and actually proving it worked, We ported JSBI to C++ — and the benchmark taught us more than the port did, I Ported cJSON to Rust, and My Own Test Suite Lied to My Face, robfig-cron-rs: robfig/cron, ported to Rust, I Ported decimal.js to Go in 72 Hours — and Found 2 Real Bugs in the Original, I ported fastest-levenshtein, the fastest string-matching library in the JavaScript ecosystem, to Go, Porting price-parser from Python to Rust: the hard part was proving it still lied the same way, I thought porting TinyExpr to Rust would be easy. Then the tests started disagreeing., Rust Port of Python's natsort with 8 Bugs and 6 Hours on Regex, The Emoji That Broke My Levenshtein Port: A Port Mortem Story, Porting robfig/cron to Rust: How 18,000 Differential Tests & A 6-Hour Timezone Bug Proved "It Compiles" Is Only 5%, Port Mortem 2026 · ported pylev Python Rust · 250k diff tests, 0 mismatches · the Unicode indexing trap is real, Resurrecting TextDistance in Rust for AI Systems, From Python to Rust: We thought we were porting algorithms. We were actually porting behavior.

Stay tuned.

Get in Touch

–

Get in Touch

–

Get in Touch

–

Get in Touch

–

Get in Touch

–

Get in Touch

–

Get in Touch

–

Get in Touch

–

Get in Touch

–

Get in Touch

–

Get in Touch

–

Get in Touch

–