Metadata-Version: 2.1
Name: s3-simple-compress
Version: 0.1.0
Summary: Documentation for AWS S3 In-Memory File Compression (zip) Program 
License: MIT
Author: Bruno Mesquita
Author-email: bruno.mesquita2707@gmail.com
Requires-Python: >=3.11,<4.0
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Web Environment
Classifier: Framework :: AWS CDK
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Education :: Testing
Classifier: Topic :: Internet
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Dist: boto3 (>=1.25.0,<1.26.98)
Requires-Dist: ipywidgets (>=8.0.6,<9.0.0)
Requires-Dist: rich (>=13.3.5,<14.0.0)
Project-URL: Bug Tracker, https://github.com/BrunoMesquitaa/s3_simple_compress/issues
Project-URL: Código, https://github.com/BrunoMesquitaa/s3_simple_compress
Project-URL: Documentação, https://s3-simple-compress.readthedocs.io/en/latest/
Description-Content-Type: text/markdown

# S3 Simple Compress ZIP
## Documentation for AWS S3 In-Memory File Compression (zip) Program

[![Python tests](https://github.com/BrunoMesquitaa/s3_simple_compress/actions/workflows/pytest.yml/badge.svg)](https://github.com/BrunoMesquitaa/s3_simple_compress/actions/workflows/pytest.yml)
[![codecov](https://codecov.io/github/BrunoMesquitaa/s3_simple_compress/branch/main/graph/badge.svg?token=9J8EV3D4T3)](https://codecov.io/github/BrunoMesquitaa/s3_simple_compress)
[![Documentation Status](https://readthedocs.org/projects/s3-simple-compress/badge/?version=latest)](https://s3-simple-compress.readthedocs.io/en/latest/?badge=latest)

## Overview

The AWS S3 file compression (zip) program is a tool that allows users to compress one or more files stored in S3 into a single zip file all in memory without the need to download to your Hard Disk. This can be useful for reducing file sizes and saving storage costs.

## Requirements

Before using the AWS S3 file compression (zip) program, you'll need to have the following:
```
- An AWS account
- Access to the AWS S3 service
- Basic knowledge of command line and AWS
```

---

## Installation

### How to install the project

#### Overview

The AWS S3 file compression (zip) program is a tool that allows users to compress one or more files stored in S3 into a single zip file all in memory without the need to download to your Hard Disk. This can be useful for reducing file sizes and saving storage costs.
Requirements

Before using the AWS S3 file compression (zip) program, you'll need to have the following:

#### Bash

An AWS account
Access to the AWS S3 service
Basic knowledge of command line and AWS

Installation
How to install the project

For installation of the project's CLI, we recommend using poetry to install:

```console
poetry add s3-compress
```

Although this is only a recommendation! You can also install the project with your preferred package manager, such as pip:

```console
pip install s3-compress
```

---

## How to use the program

To use the AWS S3 file compression (zip) program, follow the steps below:
```
- First, we need to import our package
- Then, instantiate the class
- We may or may not need to call the `credentials` method, depending on whether `~/.aws/credentials` already exists or not
- Finally, we just need to call the `zipping_in_s3` method
```
The program will compress the specified files and save the compressed zip file in the specified S3 bucket.

## Code Example

```py title="example.py" linenums="1" 
from s3_compress.zipping_s3 import ZippingS3

zips3 = ZippingS3()

zips3.credentials(
        ACCESS_KEY='test',
        SECRET_KEY='test',
        SESSION_TOKEN='us-east-1'
    )

zips3.zipping_in_s3('test', '', 'zip_name')
```

Here's a Python code example that implements the AWS S3 file compression (zip) program's functionality 100% in memory.
