scosman/freecell

The open spreadsheet app

Rust

11

567 commits

updated Aug 27, 2026

See the code

README

freecell logo mark

The open spreadsheet app

  • Free and open-source desktop spreadsheet app
  • Supports XLSX format, 90% of Excel formulas, charts, and advanced formatting
  • GPU accelerated UI
  • Insanely fast and light: Rust-based, 8MB app, launches in 60ms
  • Cross platform: Mac, Windows and Linux

Download for macOS Download for macOS Download for macOS

Features

It’s a spreadsheet. It has the most of the features you’d come to expect including:

  • Formulas: supports 90% of Excel formulas
  • Formatting: text formatting, borders, fills and sizing
  • XLSX file support: open and edit Excel files (OOXML format)
  • Speed: it’s ridiculously fast and lightweight.
  • 100% local software: no cloud, no analytics, completely private
  • Cross platform: Mac, Windows and Linux
  • Native: compiled desktop app, no Electron or web-views
  • Charts: 12 most common chart types supported
  • More: merged cells, frozen panes, conditional formatting, and much more

What’s not included (yet):

  • Pivot tables
  • Dynamic arrays (UNIQUE/FILTER/SORT)
  • Clippy

FAQ

Why? Honestly, to see if I could.

I’ve been building more and more software with agentic engineering. This project came out of the question: can I recreate an app that hundreds of people have been working on for decades, with decent quality, in a short amount of time.

How is it built FreeCell is built in Rust. It’s an agentic engineering project (vibe coding but with tests), using the vibe crafting skill.

What engine does it use Its core spreadsheet engine is IronCalc. It’s an excellent Rust-based, Excel compatible spreadsheet framework.

What rendering system does it use It uses the GPUI library, the same library behind the Zed editor. Plus GPUI-component.

Why GPU rendering? I enjoy the speed of apps like Zed and Ghostty. A spreadsheet is largely custom UI components with minimal reuse of system controls, so it’s a good fit for GPU rendering. The result: it’s buttery smooth even on the largest sheets and works on all major platforms.

Running from Source

cd App
cargo run -p freecell-app

Building from Source

cd App
./scripts/package.sh

License

Licensed under either of

at your option.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

scosman/freecell

The open spreadsheet app

Rust

11

567 commits

updated Aug 27, 2026

See the code

README

freecell logo mark

The open spreadsheet app

  • Free and open-source desktop spreadsheet app
  • Supports XLSX format, 90% of Excel formulas, charts, and advanced formatting
  • GPU accelerated UI
  • Insanely fast and light: Rust-based, 8MB app, launches in 60ms
  • Cross platform: Mac, Windows and Linux

Download for macOS Download for macOS Download for macOS

Features

It’s a spreadsheet. It has the most of the features you’d come to expect including:

  • Formulas: supports 90% of Excel formulas
  • Formatting: text formatting, borders, fills and sizing
  • XLSX file support: open and edit Excel files (OOXML format)
  • Speed: it’s ridiculously fast and lightweight.
  • 100% local software: no cloud, no analytics, completely private
  • Cross platform: Mac, Windows and Linux
  • Native: compiled desktop app, no Electron or web-views
  • Charts: 12 most common chart types supported
  • More: merged cells, frozen panes, conditional formatting, and much more

What’s not included (yet):

  • Pivot tables
  • Dynamic arrays (UNIQUE/FILTER/SORT)
  • Clippy

FAQ

Why? Honestly, to see if I could.

I’ve been building more and more software with agentic engineering. This project came out of the question: can I recreate an app that hundreds of people have been working on for decades, with decent quality, in a short amount of time.

How is it built FreeCell is built in Rust. It’s an agentic engineering project (vibe coding but with tests), using the vibe crafting skill.

What engine does it use Its core spreadsheet engine is IronCalc. It’s an excellent Rust-based, Excel compatible spreadsheet framework.

What rendering system does it use It uses the GPUI library, the same library behind the Zed editor. Plus GPUI-component.

Why GPU rendering? I enjoy the speed of apps like Zed and Ghostty. A spreadsheet is largely custom UI components with minimal reuse of system controls, so it’s a good fit for GPU rendering. The result: it’s buttery smooth even on the largest sheets and works on all major platforms.

Running from Source

cd App
cargo run -p freecell-app

Building from Source

cd App
./scripts/package.sh

License

Licensed under either of

at your option.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.