Skip to content

This content is for v4.x (Alpha). Switch to the Stable version.

Compatibility

openxml-office v4.x is built on a single Rust core that is exposed to other languages through a Rust FFI layer. The Rust crate talks to the core directly, while every other language ships a thin wrapper around the FFI layer. The generated documents target Microsoft Office 2007 and newer.

Supported Platforms & Languages

Minimum runtime version required to consume each package. Stage 2 languages are planned and not yet published.

LanguageStageMin. Supported VersionPackageIntegration
RustStage 11.32draviavemal-openxml_officeCrate connecting directly to the core lib
C#Stage 1.NET 10.0draviavemal.openxml-officeWrapper around the Rust FFI layer
PythonStage 13.8PyPI (cffi)Wrapper around the Rust FFI layer using cffi
JavaStage 21.8Maven CentralWrapper around the Rust FFI layer
GoStage 21.22Go moduleWrapper around the Rust FFI layer
TypeScriptStage 2β€”npmNode addon exposed via NAPI-RS

Release Versions

Current stable and alpha release for each language. Wrapper languages depend on the shared Rust FFI / core (rs) build; that dependency version is listed for reference.

The Rust crate connects to the core library directly, so it has no separate FFI dependency.

PackageCurrent Stable ReleaseCurrent Alpha ReleaseDependent FFI / RS Version
draviavemal-openxml_officebadgebadgeCore (no FFI wrapper)

Project Progress

V4 Development Status

LanguagePackageProgress
Flatbufferscommon🟩⬜⬜⬜⬜
Rustfbs🟩⬜⬜⬜⬜
Rustxml🟩🟩🟩🟩⬜
Rustglobal🟩🟩⬜⬜⬜
Rustspreadsheet🟩🟩🟩🟩⬜
Rustpresentation🟩⬜⬜⬜⬜
Rustdocument🟩⬜⬜⬜⬜
RustFFI🟩⬜⬜⬜⬜
C#fbs🟩⬜⬜⬜⬜
C#spreadsheet🟩⬜⬜⬜⬜
C#presentation🟩⬜⬜⬜⬜
C#document🟩⬜⬜⬜⬜
Pythonfbs🟩⬜⬜⬜⬜
Pythonspreadsheet⬜⬜⬜⬜⬜
Pythonpresentation⬜⬜⬜⬜⬜
Pythondocument⬜⬜⬜⬜⬜
------------------------------
PHASE 2PHASE 2PHASE 2
------------------------------
Javafbs⬜⬜⬜⬜⬜
Javaspreadsheet⬜⬜⬜⬜⬜
Javapresentation⬜⬜⬜⬜⬜
Javadocument⬜⬜⬜⬜⬜
Gofbs⬜⬜⬜⬜⬜
Gospreadsheet⬜⬜⬜⬜⬜
Gopresentation⬜⬜⬜⬜⬜
Godocument⬜⬜⬜⬜⬜
TypeScriptfbs⬜⬜⬜⬜⬜
TypeScriptspreadsheet⬜⬜⬜⬜⬜
TypeScriptpresentation⬜⬜⬜⬜⬜
TypeScriptdocument⬜⬜⬜⬜⬜