zip-crystal
Version, currently 0.2.04 versions
- 0.2.0latestNov 25, 2016
- 0.1.2not indexedNov 25, 2016
- 0.1.1not indexedNov 25, 2016
- 0.1.0not indexedNov 25, 2016
github.com/pablotron/zip-crystal
Read and write Zip Archives with Crystal.
6 stars
1 dependent
License: MIT
Installation
# Add this to your shard.yml
dependencies:
zip-crystal:
github: pablotron/zip-crystal
version: ~> 0.2.0Then run:
shards installshard.yml
- Crystal
- no constraint declared
- License
- MIT
- Author
- Paul Duncan
Dependencies
This version declares no dependencies.
README
zip-crystal
Read and write zip archives natively from Crystal.
Features
- Read and write zip files
- Native Crystal, no dependencies other than zlib
- Stream writing (e.g. write zip to socket, pipe, or other arbitrary, non-seekable IO)
- ZIP64 support
- Store and DEFLATE compression
- UTF-8 filename and comment support (EFS)
TODO
- LZMA and BZip2 compression
- Encryption (Legacy and Strong Encryption)
- Split archives (e.g. multi-disk archives)
- Legacy Unicode support
Installation
Add this to your application's shard.yml:
dependencies:
zip-crystal:
github: pablotron/zip-crystal
Usage
require "zip-crystal/zip"
# write to "foo.zip"
Zip.write("foo.zip") do |zip|
# add "bar.txt" with contents "hello!"
zip.add("bar.txt", "hello!")
# add local file "/path/to/image.png" as "image.png"
zip.add_file("image.png", "/path/to/image.png")
end
# create memory io
mem_io = IO::Memory.new
# read from "foo.zip"
Zip.read("foo.zip") do |zip|
# extract "bar.txt" to mem_io
zip["bar.txt"].write(mem_io)
# extract "image.png" to "output-image.png"
zip["image.png"].write("output-image.png")
end
See the API documentation for additional information.
Contributing
- Fork it ( https://github.com/pablotron/zip-crystal/fork )
- Create your feature branch (git checkout -b my-new-feature)
- Commit your changes (git commit -am 'Add some feature')
- Push to the branch (git push origin my-new-feature)
- Create a new Pull Request
Contributors
- pablotron Paul Duncan - creator, maintainer
Documentation
Built from the current release. The first visit to a release nobody has asked for starts its build.
Links
This release
- Version
0.2.0- Tagged
- Nov 25, 2016
- Commit
d7ca9376afab- Indexed
- yes
Dependents
Repository
github.com/pablotron/zip-crystal
Metadata
- Created
- Aug 12, 2026
- Updated
- Aug 15, 2026
- Synced
- Aug 15, 2026
- Versions
- 4