COOLJAPAN
2026-02-25

FOP 0.1.0 Released — High-Performance Pure Rust Reimplementation of Apache FOP

XSL-FO 1.1 to PDF (and SVG/text) pipeline in pure Rust. 10–1200x faster than Java FOP, zero JVM, full Knuth-Plass line breaking, 294 properties supported. Production-grade document generation is now memory-safe and sovereign.

A foundational piece for the COOLJAPAN ecosystem landed on February 25.

Today we released FOP 0.1.0 — a complete, high-performance reimplementation of Apache FOP (Formatting Objects Processor) written entirely in Rust.

No JVM. No C++. No external binaries.
Just clean, memory-safe, blazing-fast XSL-FO processing that compiles to a single static binary.

Why FOP 0.1.0 is a game changer

For 20+ years, enterprise document generation meant running Apache FOP (Java) or commercial alternatives (RenderX, Antenna House).
These tools are powerful but suffer from:

FOP 0.1.0 ends all of that.

It delivers 10–1200× faster performance while using 1/10th the memory — all in pure Rust with zero unsafe code in the hot path.

Technical Deep Dive: How We Rebuilt Apache FOP

The architecture mirrors the original FOP pipeline but is radically simplified and optimized in Rust:

  1. FO Tree (parsing)
    quick-xml + zero-copy Cow<'static, str> parsing. 294 XSL-FO 1.1 properties with full inheritance and cascading.

  2. Area Tree (layout engine)

    • Knuth-Plass optimal paragraph breaking (the gold standard)
    • Advanced table layout (fixed, proportional, auto)
    • Multi-page breaking, footnotes, floats, keeps
    • 9 list marker styles + custom graphics
  3. Renderer (PDF output)
    Pure-Rust PDF writer with font embedding, hyperlinks, bookmarks, text extraction, and compression.
    Also supports SVG and plain-text output.

Key Rust advantages:

What’s inside 0.1.0

This is the foundation

FOP is now the official document generation layer for the COOLJAPAN stack:

Repository: https://github.com/cool-japan/fop

Star the repo if you’re tired of JVM-based document generation.

The era of “just run the Java JAR” is over.
Pure Rust document processing is here — and it’s ridiculously fast.

KitaSan at COOLJAPAN OÜ
February 25, 2026