Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/niamtokik/dotzip
PKWARE ZIP File Format Implementation in Elixir
https://github.com/niamtokik/dotzip
Last synced: about 5 hours ago
JSON representation
PKWARE ZIP File Format Implementation in Elixir
- Host: GitHub
- URL: https://github.com/niamtokik/dotzip
- Owner: niamtokik
- License: isc
- Created: 2021-03-29T20:07:11.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2021-12-30T13:18:49.000Z (almost 3 years ago)
- Last Synced: 2023-07-14T13:29:37.857Z (over 1 year ago)
- Language: Elixir
- Size: 43.9 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Dotzip
> ZIP is one of the most widely used compressed file formats. It is
> universally used to aggregate, compress, and encrypt files into a
> single interoperable container. No specific use or application need
> is defined by this format and no specific implementation guidance is
> provided. This document provides details on the storage format for
> creating ZIP files. Information is provided on the records and
> fields that describe what a ZIP file is. -- from [official
> specification
> file](https://pkware.cachefly.net/webdocs/APPNOTE/APPNOTE-6.3.3.TXT)Note: This project is a work in progress. Please don't use it in
production.## Installation
If [available in Hex](https://hex.pm/docs/publish), the package can be installed
by adding `dotzip` to your list of dependencies in `mix.exs`:```elixir
def deps do
[
{:dotzip, "~> 0.1.0"}
]
end
```## Decoding Example
create a zip file
```sh
cd /tmp
echo test > test
zip test.zip test
```extract information
```elixir
{:ok, file} = :file.read_file("/tmp/test.zip")
Dotzip.decode(file)
```## Resources
* https://www.loc.gov/preservation/digital/formats/fdd/fdd000362.shtml
* https://pkware.cachefly.net/webdocs/APPNOTE/APPNOTE-6.3.3.TXT
* https://en.wikipedia.org/wiki/ZIP_(file_format)### Other implementation
* http://infozip.sourceforge.net/
* https://github.com/kuba--/zip
* https://github.com/zip-rs/zip
* https://github.com/Stuk/jszip
* https://github.com/srikanth-lingala/zip4j## Trademarks
> PKWARE, PKZIP, SecureZIP, and PKSFX are registered trademarks of
> PKWARE, Inc. in the United States and elsewhere. PKPatchMaker,
> Deflate64, and ZIP64 are trademarks of PKWARE, Inc. Other marks
> referenced within this document appear for identification purposes
> only and are the property of their respective owners.## Notes
Documentation can be generated with [ExDoc](https://github.com/elixir-lang/ex_doc)
and published on [HexDocs](https://hexdocs.pm). Once published, the docs can
be found at [https://hexdocs.pm/dotzip](https://hexdocs.pm/dotzip).