This release ships official bindings for JavaScript/TypeScript, Go, and C#, built on a shared C FFI layer. 100% Rust FFI parity across all three.
Features
- JavaScript / TypeScript bindings (
pdf-oxideon npm) — N-API native module withBuffer/Uint8Arrayinput,openWithPassword(), worker thread pool,Symbol.dispose, rich error hierarchy, and complete API coverage: document editor, forms, rendering, signatures/TSA, compliance, annotations, extraction with bbox. Full TypeScript type definitions included. - Go bindings (
github.com/yfedoseev/pdf_oxide/go) — Full API with goroutine-safePdfDocument(sync.RWMutex),io.Readersupport, functional options pattern,SetLogLevel(), and ARM64 CGo targets. - C# / .NET bindings (
PdfOxideon NuGet) — P/Invoke withNativeHandle(SafeHandle),IDisposable,ReaderWriterLockSlimthread safety,async Task<T>+CancellationToken, fluent builders, LINQ extensions, plugin system. ARM64 NuGet targets (linux-arm64, osx-arm64, win-arm64). - C FFI layer (
src/ffi.rs) — 270+extern "C"functions covering the full Rust API surface. - Shared C header (
include/pdf_oxide_c/pdf_oxide.h) — Portable header for all FFI consumers. pdf_oxide_set_log_level()/pdf_oxide_get_log_level()— Global log level control exposed to all language bindings.
Installation
Rust (crates.io)
cargo add pdf_oxidePython (PyPI)
pip install pdf_oxideJavaScript/WASM (npm)
npm install pdf-oxide-wasmCLI (Homebrew)
brew install yfedoseev/tap/pdf-oxideCLI (Scoop — Windows)
scoop bucket add pdf-oxide https://github.com/yfedoseev/scoop-pdf-oxide
scoop install pdf-oxideCLI (Shell installer)
curl -fsSL https://raw.githubusercontent.com/yfedoseev/pdf_oxide/main/install.sh | shCLI (cargo-binstall)
cargo binstall pdf_oxide_cliMCP Server (for AI assistants)
cargo install pdf_oxide_mcpPre-built Binaries
Download archives for Linux, macOS, and Windows from the assets below. Each archive includes both pdf-oxide (CLI) and pdf-oxide-mcp (MCP server).
Platform Support
| Platform | Architecture | Archive |
|---|---|---|
| Linux | x86_64 (glibc) | pdf_oxide-linux-x86_64-*.tar.gz
|
| Linux | x86_64 (musl) | pdf_oxide-linux-x86_64-musl-*.tar.gz
|
| Linux | ARM64 | pdf_oxide-linux-aarch64-*.tar.gz
|
| macOS | x86_64 (Intel) | pdf_oxide-macos-x86_64-*.tar.gz
|
| macOS | ARM64 (Apple Silicon) | pdf_oxide-macos-aarch64-*.tar.gz
|
| Windows | x86_64 | pdf_oxide-windows-x86_64-*.zip
|
Changelog
See CHANGELOG.md for full details.