# Archivey > Read, stream, and safely extract archives behind one uniform interface. Archivey is a Python library (`pip install archivey`, `import archivey`) that reads ZIP, TAR, 7z, RAR, ISO and single compressed files through one API: `archivey.open_archive(path)` returns a reader with `members()`, `get()`, `read()`, `open()`, `stream_members()` and `extract_all()`. It is not a wrapper around zipfile or tarfile, and their method names do not apply. Start with the cheat sheet; the API reference has every signature. ## Start here - [Home](https://archivey-dev.github.io/archivey/index.md): Install, open, list, read, stream and extract in five short examples - [Cheat sheet](https://archivey-dev.github.io/archivey/cheat-sheet/index.md): The main calls, what they return and raise, safe defaults, and zipfile/tarfile equivalents - [Install](https://archivey-dev.github.io/archivey/install/index.md): PyPI extras, the unrar or unar program RAR needs, supported Pythons ## Using archivey - [Opening an archive](https://archivey-dev.github.io/archivey/opening/index.md): open_archive and open_stream sources, formats, passwords, name encodings, configuration - [Choosing how to read](https://archivey-dev.github.io/archivey/reading/index.md): Solid archives, streaming=True, seekable_members and concurrent_operations - [Extracting](https://archivey-dev.github.io/archivey/extracting/index.md): extract_all arguments, extraction policies, overwrite, limits, filters - [Security](https://archivey-dev.github.io/archivey/security/index.md): What safe extraction guarantees, where it stops, and resource limits - [Errors and diagnostics](https://archivey-dev.github.io/archivey/errors-and-diagnostics/index.md): The exception hierarchy, damaged archives, and non-fatal diagnostics - [Command line](https://archivey-dev.github.io/archivey/cli/index.md): The archivey command (list, test, extract, info) and its exit codes - [Recipes](https://archivey-dev.github.io/archivey/recipes/index.md): Complete scripts for dataset downloads, HTTP streams, and checking uploaded archives - [Formats and extras](https://archivey-dev.github.io/archivey/formats/index.md): Per-format behaviour, extras each format needs, and format-specific member fields - [Adding a format](https://archivey-dev.github.io/archivey/adding-a-format/index.md): Adding a read-only format with the provisional archivey.formats API, the structures built-in readers share too - [Migrating from other libraries](https://archivey-dev.github.io/archivey/migrating/index.md): Equivalent calls and behaviour differences from zipfile, tarfile, py7zr and rarfile ## Reference - [API reference](https://archivey-dev.github.io/archivey/api/index.md): Every public class, function and exception, generated from the docstrings ## Background - [Philosophy](https://archivey-dev.github.io/archivey/philosophy/index.md): What archivey is for and the design choices behind its defaults - [How it works](https://archivey-dev.github.io/archivey/how-it-works/index.md): How formats are recognized, structures read and member data decoded - [How it is built](https://archivey-dev.github.io/archivey/how-it-is-built/index.md): How changes are specified, reviewed and tested - [Acknowledgements](https://archivey-dev.github.io/archivey/acknowledgements/index.md): Projects archivey adapts code from, learned from or depends on