About Docs Blog Contact

Try now

The Road to IronCalc 1.0

Nov. 6, 2024 · Nicolás Hatcher

IronCalc is a modern, light and robust spreadsheet engine written in Rust with minimal dependencies, large code coverage and good documentation. It is both aimed at developers wanting to work with spreadsheets programmatically and spreadsheet users looking for a modern free, open source and versatile spreadsheet.

After months of development in the shadows and with the gracious support of nlNet, IronCalc beginning this year we reached a point of no return. We now know we will make it.

Mid 2025, that is our target. In less than a year from now we intend to release our first stable, production ready release.

What is in the box right now

The MVP we are releasing today consist of a web application supporting 200 functions, some styling, formatting, export to and import from xlsx files.

You can use the engine headless from Rust and Python.

You can look at it as a proof of concept. Maybe you are a potential user wanting to integrate a spreadsheet in a larger product, maybe you are a developer in need to process hundreds of spreadsheets programmatically or maybe you are looking for a project to work on.

What will be in the box for version 1.0

Aside from the engine you will find bindings for Python and JavasScript, so that you can load and manipulate spreadsheets from an easy to use scripting language used by millions of people but with the power of the Rust engine.

A wealth of examples and a detailed documentation will empower the user to work in anyway they want.

You will also find an embeddable web application that you can use in your own webpage, either in your blog or as a company wide product.

You will also be able to use IronCalc freely in the web, without creating any accounts, paying any money or seeing any ads. You will be able to create spreadsheets, import them from Excel and share them freely without any barrier.

We aim at having 90% Excel compatibility of all functions across the board and many of the features like defined names, tables, merged cells, frozen columns and rows, styling and themes.

We also want to have a full end user documentation, second to none, to help millions of people around the globe to understand and learn about spreadsheets and their usage.

What is not planned for Version 1.0

Although it is difficult o say that we will not do this or that, we can tell you what is not planned for version 1.0. some of these features might be implemented as experimental features.

We will not implement a collaborative spreadsheet engine although that is planned shortly after version 1.0. If your use case requires multiple people editing the same spreadsheet at the same time you will have to implement the collaborate layer yourself. If that is your case, please get in touch with us.

You will not have a standalone desktop program, although that is planned short after version 1.0.

IronCalc will not have support for charts out of the box, you will not be able to use macros and there will be no scripting language like VBA.

Many extra features like conditional formatting, different font families, advanced management of pivot tables will probably not make the cut.

What is left to be done

IronCalc is developed in the open. You can follow the status of IronCalc in GitHub. To reach version 1.0 we need to close any open issue in the Version 1.0 milestone. If you are interested in seeing the process as it evolves you can join or Discord chat.

While some of the missing features will be easy to implement some other might prove to be challenging. In particular we intend to support dynamic arrays and the LAMBDA function.

Use cases and Unique Selling Points (USPs)

Martin has a blog about financing issues. He is working on a post in which some aspects would be better understood including a life spreadsheet in the post.

Johanna is a young entrepreneur who has an idea for a SaaS that is driven by spreadsheets at its core. She will build her product using IronCalc as a component and providing her users with a full fledged and featured packed spreadsheet compatible with Microsoft Excel.

Carol is a python developer in a large company of thousands of employees. She needs periodically to load a spreadsheet for each employee type some data, run the spreadsheet and extract the data. With IonCalc, Carol can do this in seconds programmatically using her favourite programming language.

Brad is planing a trip to Bali with his boyfriend. They want a quick way to have a spreadsheet online they can always visit to manage their finances.

Can I use it right now?

Yes!

IronCalc already is heavily tested. Thousands of tests check that the software is behaving as expected. There are missing features to be called a full fledged spreadsheet, if your use case does not need those features you can une IronCalc today!

IronCalc will be evolving in the sidelines and you might want to update at some point. Note that until Version 1.0, we won't make any attempt at backwards compatibility. That means that if you save a file in IronCalc's internal format today it might not load in two months from now. Note that you can always save your spreadsheets in the xlsx open file format, so you will never loose your data.

Can I help?

Yes!

We are aiming to have a vibrant community around IronCalc. Both at the engine level based on programmers that want to extend or use the engine in diverse situations and of spreadsheet end users that want to build fabulous spreadsheets they can finally create, share and fork.

We are a very small team and we might not have the capacity to incorporate right away every person that wants to help, bear with us please!