0.0
A long-lived project that still receives updates
A Ruby library for working with ZIP Container Format files. See http://www.idpf.org/epub/30/spec/epub30-ocf.html for the OCF specification and https://learn.adobe.com/wiki/display/PDFNAV/Universal+Container+Format for the UCF specification.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Development

~> 0.8
~> 10.1
~> 4.1
~> 0.59
~> 3.0

Runtime

~> 2.0.0
 Project Readme

ZIP Container Ruby Library

Robert Haines

A Ruby library for creating, editing and validating ZIP Container files.

Gem Version Tests Linter Ruby Style Guide Maintainability Coverage Status

Synopsis

This is a Ruby library for working with ZIP Container files. See the OCF [1, 2] and UCF [3] specifications for more details.

If you are wanting to work with UCF files in particular, there is a Ruby Gem that builds on this one specifically for that. Please see:

Usage

This library has two entry points.

The main ZipContainer::File class largely mimics the rubyzip Zip::File and Zip::FileSystem APIs so much of what you can do with them are supported for ZIP Containers. There is also API documentation with much more detail and any differences explained.

The ZipContainer::Dir class mimics, where possible, the core ruby Dir API.

There are some examples of how to use the library provided in the examples directory. See the contents of the tests directory for even more.

Versions

Version 5 of this library will be the last to support Ruby 2.7 and the last to support RubyZip 2.4. Version 6 will require at least Ruby 3.0 and RubyZip 3.0.

What this library can not do yet

The basic requirements of a ZIP Container are all implemented but memory resident ZIP Container files are not yet supported. Presently all operations are performed on files that are resident on disk.

Developing ZIP Container Ruby Library

Please see our Code of Conduct and our contributor guidelines.

Licence

3-Clause BSD Licence. See LICENCE for details.