Skip to main content

Async S3 client with lifecycle management

Project description

ADC-AioS3

ADC-AioS3 is a modern, async-first S3 client library for Python that provides a clean and intuitive interface for working with S3-compatible storage services.

Features

  • 🚀 Fully async/await based
  • 🔄 Automatic lifecycle management
  • 📦 Support for multipart uploads
  • 🔗 Presigned URL generation
  • 📝 Comprehensive metadata handling
  • 🛡️ Error handling and connection management

Installation

pip install adc-aios3

Quick Start

import asyncio
from adc_aios3 import S3Client

async def main():
    # Create and start the client
    client = await S3Client.create(
        bucket="my-bucket",
        url="http://localhost:9000",
        access_key="minioadmin",
        secret_key="minioadmin"
    )

    # Upload a file
    with open("example.txt", "rb") as f:
        key = await client.upload(f, "example.txt")

    # Download a file
    data = await client.download(key)
    
    # Generate a presigned URL
    url = await client.generate_download_url(key, expiration=3600)

    # Clean up
    await client.close()

if __name__ == "__main__":
    asyncio.run(main())

Documentation

For more detailed documentation, visit adc-aios3.readthedocs.io.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

adc_aios3-0.1.0.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

adc_aios3-0.1.0-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file adc_aios3-0.1.0.tar.gz.

File metadata

  • Download URL: adc_aios3-0.1.0.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.2

File hashes

Hashes for adc_aios3-0.1.0.tar.gz
Algorithm Hash digest
SHA256 39cf5949ac43b5818222963e1ffff9de2b45e4e7c6c2a5c589122551314197a9
MD5 9e8731ae3808133112aa54f6f6a4716d
BLAKE2b-256 2dfc9a5330f1bcf2473d376be66614a24d1eab7b18891a66f9522b5ef9da3d56

See more details on using hashes here.

File details

Details for the file adc_aios3-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: adc_aios3-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.2

File hashes

Hashes for adc_aios3-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8b67fd467c1c7d2a6c7fe9a57a5565838dc26d981635ceb7ab5dfba83e22a56a
MD5 a7cb96470458df427d5f1240eb463bfe
BLAKE2b-256 83a7bc6a24fc333962d0f6ca72988792dc25755dcc06185f9d8b5ce8e08ae369

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page