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 UI/UX Design

UI/UX Design by makandra brand

We make sure that your target audience has the best possible experience with your digital product. You get:

  • Design tailored to your audience
  • Proven processes customized to your needs
  • An expert team of experienced designers
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)