A Java library for reading and writing Excel and CSV spreadsheets with low memory use, suited to large files.
ironcalc/IronCalc
A work-in-progress spreadsheet engine written in Rust, with xlsx read/write and bindings for Python and JavaScript (wasm).
Open-source alternative to:Microsoft Excel
- Stars
- 4,225
- Forks
- 207
- Open issues
- 288
- Last commit
- 7 hours ago
What is it?
IronCalc is a spreadsheet engine written in Rust. The repository contains the core calculation engine along with an xlsx reader and writer, so spreadsheets can be loaded, evaluated and saved from code.
The engine is meant to be embedded. It can be used from Rust directly, and the project states plans for bindings to Python, JavaScript via WebAssembly, Node.js, and possibly R, Julia or Go. It also plans front ends such as a terminal UI, a desktop app and a component for web applications. A browser-based preview and a Docker setup for running the web app locally are provided.
The project is still in early development and is licensed under MIT or Apache-2.0 at the user's option.
Key features
- 01Core spreadsheet calculation engine written in Rust.
- 02Reads and writes xlsx files.
- 03Can be used from Rust, with planned bindings for Python and JavaScript (wasm).
- 04Includes a Docker setup for running the web application locally.
- 05Provides an in-browser preview of the technology.
Use cases
- Embedding spreadsheet calculations into a Rust or Python backend.
- Generating or updating xlsx files programmatically.
- Adding a spreadsheet component to a web or SaaS application.
- Experimenting with an open-source, permissively licensed spreadsheet engine.
Quick start
- 1
Start the app with Docker Compose from the repository root
docker compose up --build - 2
Open the test app in your browser at localhost port 2080
Things to know
- The project describes itself as a work-in-progress spreadsheet engine still in its early stages.
- The README says the community is small and the project is at a very early stage, and it lacks a stable API.
Topics
FAQ
- What is IronCalc?
- A work-in-progress spreadsheet engine written in Rust, with xlsx read/write and bindings for Python and JavaScript (wasm). IronCalc is a spreadsheet engine written in Rust. The repository contains the core calculation engine along with an xlsx reader and writer, so spreadsheets can be loaded, evaluated and saved from code.
- Is IronCalc free to use? What license does it have?
- IronCalc is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is IronCalc still maintained?
- Actively maintained. The last commit to IronCalc was on Oct 21, 2026.
- What can I use IronCalc for?
- Embedding spreadsheet calculations into a Rust or Python backend. Generating or updating xlsx files programmatically. Adding a spreadsheet component to a web or SaaS application. Experimenting with an open-source, permissively licensed spreadsheet engine.
- How do I install IronCalc?
- Start the app with Docker Compose from the repository root: docker compose up --build Open the test app in your browser at localhost port 2080
- Where can I get IronCalc?
- The source code and installation instructions are on GitHub: https://github.com/ironcalc/IronCalc
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Browser-based viewer and editor for Word, Excel and PowerPoint files that processes documents locally using WebAssembly.
Browser-based editor for Word, Excel, PowerPoint and PDF files that runs locally, with no Office install or account needed.
A free, open-source AI Office suite for macOS, Windows and Linux that edits real .docx, .xlsx, .pptx and PDF files with a built-in AI agent.
Grist is a self-hostable relational spreadsheet that combines spreadsheet formulas with database-style typed columns.
A terminal spreadsheet multitool for exploring, arranging and transforming tabular data across many file formats.