Tabulard

Tabulard is a library designed to process tabular data of any kind. It is able to handle anything that looks like a table, and currently provides dedicated adapters for CSV documents and XSLX sheets.

It focuses on typed results and fine-grain error management, while being performant enough to handle (very) large documents and keep a low memory footprint.

Documentation

The following resources document the latest valid state of the master branch:

Usage

Add the following to your Gemfile:

gem "tabulard", require: "sheetah/frozen"

Then bundle install.

For examples of common use cases, please have a look at spec/sheetah_spec.rb.

Project status

Tabulard already works pretty well but is still under active development.

It started as a fork of Sheetah, a library used in production at Steeple and originally authored by the now-maintainer of Tabulard.

For now, Tabulard aims to stay mostly retrocompatible with Sheetah. That said, retrocompatibility is not a long-term goal of Tabulard, as its roadmap will eventually bring important changes that can't be compatible with Sheetah (such as renaming the top-level Ruby module, for example).