office_oxide
The fastest Office document library for Python, Rust, Go, JS/TS, C# and WASM. DOCX, XLSX, PPTX, DOC, XLS, PPT. Up to 100× faster than python-docx/openpyxl/python-pptx. 100% pass rate on valid Office files. MIT/Apache-2.0.
File Explorer
Download Latest Version (.zip)- wiki.json
- pre-commit
- bug_report.yml
- config.yml
- feature_request.yml
- bump-version.sh
- check-versions.sh
- extract-release-notes.sh
- office-oxide.json
- office-oxide.rb
- ci.yml
- cla.yml
- codeql.yml
- outdated.yml
- pr-quality.yml
- python.yml
- release.yml
- scorecard.yml
- template-compliance.yml
- CODEOWNERS
- dependabot.yml
- FUNDING.yml
- pull_request_template.md
- release.yml
- dotext_perfile.rs
- find_oom.rs
- main.rs
- Cargo.lock
- Cargo.toml
- html.rs
- info.rs
- ir.rs
- markdown.rs
- mod.rs
- text.rs
- main.rs
- Cargo.toml
- README.md
- main.rs
- protocol.rs
- Cargo.toml
- README.md
- Document.cs
- EditableDocument.cs
- LICENSE-APACHE
- LICENSE-MIT
- NativeMethods.cs
- OfficeOxide.csproj
- OfficeOxideException.cs
- PptxWriter.cs
- README.md
- XlsxWriter.cs
- BasicTests.cs
- OfficeOxide.Tests.csproj
- OfficeOxide.sln
- README.md
- docx_spec.md
- opc_shared_spec.md
- pptx_spec.md
- xlsx_spec.md
- ARCHITECTURE.md
- getting-started-c.md
- getting-started-csharp.md
- getting-started-go.md
- getting-started-javascript.md
- getting-started-python.md
- getting-started-rust.md
- getting-started-wasm.md
- MISSION.md
- README.md
- extract.c
- 01_extract.csproj
- Program.cs
- 02_create_from_markdown.csproj
- Program.cs
- 03_edit.csproj
- Program.cs
- Extract.csproj
- Program.cs
- Program.cs
- Replace.csproj
- go.mod
- main.go
- go.mod
- main.go
- go.mod
- main.go
- main.go
- main.go
- main.go
- 01_extract.mjs
- 02_create_from_markdown.mjs
- 03_edit.mjs
- extract.mjs
- read_xlsx.mjs
- replace.mjs
- main.py
- main.py
- main.py
- main.py
- extract.py
- read_xlsx.py
- replace.py
- 01_extract.rs
- 02_create_rich.rs
- 03_create_xlsx.rs
- 04_create_pptx.rs
- 05_edit.rs
- 06_from_markdown.rs
- extract.rs
- make_smoke.rs
- README.md
- fuzz_parse.rs
- Cargo.toml
- main.go
- cgo_dev_unix.go
- cgo_dev_windows.go
- go.mod
- LICENSE-APACHE
- LICENSE-MIT
- office_oxide.go
- office_oxide_test.go
- README.md
- office_oxide.h
- index.cjs
- index.d.ts
- index.js
- native.js
- check-prebuild.cjs
- basic.test.mjs
- LICENSE-APACHE
- LICENSE-MIT
- package-lock.json
- package.json
- README.md
- __init__.py
- _native.pyi
- py.typed
- README.md
- bench-requirements.txt
- bench.sh
- blip.rs
- directory.rs
- error.rs
- header.rs
- mod.rs
- reader.rs
- content_types.rs
- core_properties.rs
- editable.rs
- embedded_fonts.rs
- error.rs
- mod.rs
- opc.rs
- parallel.rs
- properties.rs
- relationships.rs
- theme.rs
- traits.rs
- units.rs
- xml.rs
- document.rs
- error.rs
- fib.rs
- images.rs
- mod.rs
- piece_table.rs
- document.rs
- edit.rs
- error.rs
- formatting.rs
- headers.rs
- hyperlink.rs
- image.rs
- mod.rs
- numbering.rs
- paragraph.rs
- styles.rs
- table.rs
- text.rs
- write.rs
- document.rs
- error.rs
- images.rs
- mod.rs
- persist.rs
- records.rs
- text.rs
- edit.rs
- error.rs
- mod.rs
- presentation.rs
- shape.rs
- slide.rs
- text.rs
- write.rs
- cell.rs
- error.rs
- images.rs
- mod.rs
- records.rs
- sst.rs
- workbook.rs
- cell.rs
- date.rs
- edit.rs
- error.rs
- mod.rs
- numfmt.rs
- shared_strings.rs
- styles.rs
- text.rs
- workbook.rs
- worksheet.rs
- write.rs
- convert_doc.rs
- convert_docx.rs
- convert_ppt.rs
- convert_pptx.rs
- convert_xls.rs
- convert_xlsx.rs
- create.rs
- edit.rs
- error.rs
- ffi.rs
- format.rs
- ir.rs
- ir_from_markdown.rs
- ir_render.rs
- lib.rs
- python.rs
- wasm.rs
- core_integration.rs
- docx_integration.rs
- ir_roundtrip_idempotence.rs
- office_integration.rs
- pptx_integration.rs
- write_integration.rs
- xlsx_integration.rs
- xlsx_row_cap.rs
- LICENSE-APACHE
- LICENSE-MIT
- package.json
- README.md
- .editorconfig
- .gitattributes
- .gitignore
- .pre-commit-config.yaml
- .taplo.toml
- AGENTS.md
- bench_python.py
- BENCHMARKS.md
- Cargo.lock
- Cargo.toml
- cbindgen.toml
- CHANGELOG.md
- CLA.md
- clippy.toml
- CODE_OF_CONDUCT.md
- codecov.yml
- CONTRIBUTING.md
- deny.toml
- LICENSE-APACHE
- LICENSE-MIT
- llms.txt
- Makefile
- NOTICE
- pyproject.toml
- README.md
- rustfmt.toml
- SECURITY.md
- TRADEMARKS.md
# Installation Guide
git clone https://github.com/yfedoseev/office_oxide
Downloads the entire project code from GitHub to your computer.
cd office_oxide
Moves into the project folder you just downloaded.
2. Official Install Script
Easy Recommended- Python 3 Python is required to use pip.
- Rust (rustup) Rust is required to use cargo.
pip install office-oxide
Installs the package published on PyPI directly — no need to clone the source.
cargo install office_oxide_cli # Cargo
Builds and installs the package published on crates.io — no need to clone the repo yourself.
cargo install office_oxide_mcp
Builds and installs the package published on crates.io — no need to clone the repo yourself.
Pulled directly from this repo's README.
3. .NET
Mediumdotnet add package OfficeOxide
Type this command into your terminal and run it.
Pulled directly from this repo's README.
4. Node.js
Easynpm install office-oxide # native addon
Downloads and installs the libraries listed in package.json.
npm install office-oxide-wasm # portable WASM
Downloads and installs the libraries listed in package.json.
npm install office-oxide-wasm # portable WASM (browser + Node.js)
Downloads and installs the libraries listed in package.json.
npm install office-oxide # native addon via koffi (Node.js only, no node-gyp)
Downloads and installs the libraries listed in package.json.
Pulled directly from this repo's README.
5. Python
Easypip install office-oxide
Installs the package published on PyPI directly — no need to clone the source.
Pulled directly from this repo's README.
6. Go
Mediumcd go
This project's files live in a subfolder, so move into it first.
go build ./...
Compiles the Go program into an executable.
go run .
Runs the Go program directly without a separate build step.
7. Rust
Medium- Git Needed to download the project code from GitHub.
- Rust (rustup) Installing via rustup also installs cargo.
cargo install office_oxide_cli # Cargo
Builds and installs the package published on crates.io — no need to clone the repo yourself.
cargo binstall office_oxide_cli # Pre-built binary
Type this command into your terminal and run it.
cargo install office_oxide_mcp
Builds and installs the package published on crates.io — no need to clone the repo yourself.
cargo build --release
Compiles the Rust project.
cargo test
Type this command into your terminal and run it.
Pulled directly from this repo's README.
8. Make
Medium- Git Needed to download the project code from GitHub.
- Make Usually pre-installed on Linux/macOS. On Windows, install separately (e.g. via MSYS2 or WSL).
make
Compiles the code based on the generated build configuration to produce an executable.
