The Neopress Broadsheet · Engineering & Design Dispatches
Notes from compiling the future of publishing.
Field dispatches by Billy on building a single-binary Rust CMS, transpiling legacy WordPress page builders into a unified AST, and connecting AI agents via the Model Context Protocol.
Best Open-Source WordPress Alternatives in 2026: Comparing Neopress (Rust CMS), Ghost, Strapi, Hugo & Payload
Searching for a fast, self-hosted, open-source WordPress alternative in 2026? We compare Neopress (native Rust + SQLite CMS with 1-click Elementor/Divi/Gutenberg migration and built-in MCP server) against Ghost, Strapi, Payload CMS, and Hugo.
Designing in the Open: The Broadsheet Aesthetic and Our Honest v0.1 Ledger
Why does every developer tool website look like a dark-mode purple SaaS dashboard? For Neopress, we went back to 1960s Swiss broadsheets, warm newsprint, woodblock plates, and an honest ledger of what works and what doesn't.
Golden Master Testing: How We Port WordPress PHP Functions to Rust with 100% Parity
WordPress's wpautop, sanitize_title, and shortcode_atts have twenty years of quirky edge cases. Guessing how they behave breaks URLs and layouts. Here is how our Golden Master verification loop guarantees byte-for-byte parity.
MCP-Native Publishing: Why We Built a Model Context Protocol Server Into the Core Binary
When AI coding assistants edit a CMS today, they usually dump brittle raw HTML blobs into a text field. With Neopress's built-in /mcp endpoint, agents read and write native NeoStudio AST trees and ElementorKit design tokens.
Transpiling Elementor, Divi, and Gutenberg into a Unified Rust Layout AST
The hardest part of leaving WordPress isn't moving wp_posts rows—it's rescuing pages trapped inside Elementor _elementor_data JSON, nested Divi shortcodes, and Gutenberg block comments.
Why I Started Neopress: Replacing WordPress's PHP Runtime with a Single Rust Binary
After fifteen years of maintaining WordPress sites, I got tired of babysitting PHP-FPM workers, Redis caches, and 40-plugin stacks just to serve mostly-static HTML. Here is why we are compiling the CMS into a single Rust + SQLite binary.