Read more

xlsxtream: Streaming & Fast XLSX Spreadsheet Writer for Ruby

Arne Hartherz
November 03, 2017Software engineer at makandra GmbH

When writing XLSX files, there are gems like rubyXL Show archive.org snapshot or axlsx Show archive.org snapshot . While they do offer features like formatting or graphs, to represent spreadsheet cells, they have to keep several Ruby objects in memory. When writing huge files, both will become slow and consume lots of memory.

Illustration web development

Do you need DevOps-experts?

Your development team has a full backlog? No time for infrastructure architecture? Our DevOps team is ready to support you!

  • We build reliable cloud solutions with Infrastructure as code
  • We are experts in security, Linux and databases
  • We support your dev team to perform
Read more Show archive.org snapshot

Enter Xlsxtream Show archive.org snapshot , a Ruby XLSX library with less features (e.g. no individual cell styles) but which does away with the memory issue by streaming rows directly to disk (or an IO stream).

It is incredibly fast, even for large spreadsheets. And as long as you don't prepare all data beforehand, it requires little memory.

Xlsxtream will correctly handle Numerics, Dates, Times, and Booleans. Support for Shared String Tables (useful for huge spreadsheets with repetitive data) is also included.

Posted by Arne Hartherz to makandra dev (2017-11-03 18:07)