A Modern Web App in C

636 points · 277 comments on HN · read original →

Points and comments are a snapshot, not live.

Shipping a commercial web product in C via CGI in 2026 is feasible and surprisingly modern.

Corey Prophitt built and shipped marketyour.games using the BCHS stack: OpenBSD, C, httpd, and SQLite. Every request spawns a fresh CGI process. Static assets are compiled into the binary and served from memory. Dependencies are libcurl, libsodium, and libcjson; cjson and SQLite are vendored as single C files. He liked the minimal supply chain risk, simple tooling, and clear separation of concerns. He notes CGI requires rolling your own cookie/query/form parsing. OpenBSD's pledge and unveil help secure the C binary. Deploying is replacing one file with no downtime.

What commenters are saying

Several commenters found the site's low-contrast color scheme nearly unreadable, calling it the least readable site they had seen. Others questioned the choice of C over C++ or Rust, sparking debate about footguns, memory safety, and cognitive overhead. Some praised the project's minimalism and low supply chain risk. A few argued for FastCGI to avoid fork-per-request overhead, though the author's approach was defended for its simplicity.