Skip to main content

Nimble-AWS is a Python library engineered for high-performance, asynchronous communication with AWS services. The library focuses on providing streamlined adapters that abstract the complexity of AWS operations, making it easier to integrate AWS into your applications.

Project description

Nimble-AWS

Nimble-AWS is a Python library designed to simplify and accelerate interactions with AWS services. It provides asynchronous adapters for efficient communication and includes middleware to streamline event handling and AWS Lambda integration. Whether you're working on a small project or building large-scale distributed systems, Nimble-AWS helps you focus on your application logic by abstracting the complexities of AWS.

Features

  • Asynchronous Communication: Execute AWS service operations asynchronously for high performance.
  • Simplified Abstractions: Adapters that make interacting with AWS services intuitive and less error-prone.
  • Middleware Support: Built-in middlewares for event-driven architectures and Lambda functions.
  • Optimized Performance: Designed for minimal latency and high throughput.

Installation

Install Nimble-AWS using pip:

pip install nimble-aws

Example Usage

S3 Adapter

The following example demonstrates how to use the S3 adapter to retrieve files from an S3 bucket asynchronously:

from nimble_aws.adapter import S3


async def handler():
    region = "us-east-1"
    bucket = "example-bucket"
    paths = ["path/to/file1.json", "path/to/file2.json"]
    files = await S3().get_files(bucket=bucket, paths=paths, decode=True, region=region)
    print(files)


def lambda_handler():
    loop = asyncio.get_running_loop()
    loop.run_until_complete(handler())

Environment Configuration

The library uses an env module to retrieve default configurations such as the AWS region. Ensure your AWS credentials and environment variables are properly configured before using Nimble-AWS.

Contributing

We welcome contributions to Nimble-AWS! Please read our CONTRIBUTING.md for guidelines on how to get started.

License

Nimble-AWS is licensed under the MIT License. See the LICENSE file for details.

Feedback

If you encounter any issues or have suggestions, please open an issue on our GitHub repository.

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

nimble_aws-0.1.1.tar.gz (9.5 kB view details)

Uploaded Source

Built Distribution

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

nimble_aws-0.1.1-py3-none-any.whl (14.4 kB view details)

Uploaded Python 3

File details

Details for the file nimble_aws-0.1.1.tar.gz.

File metadata

  • Download URL: nimble_aws-0.1.1.tar.gz
  • Upload date:
  • Size: 9.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.5 CPython/3.11.10 Linux/6.5.0-1025-azure

File hashes

Hashes for nimble_aws-0.1.1.tar.gz
Algorithm Hash digest
SHA256 f31e6533c082c0dda089a397ca947ce4c87f2e0d86a6f2047b892f1152fc56a1
MD5 af2932733809fc39fde6e7e892d6553f
BLAKE2b-256 1d454e19d8bbc763209976847f480a962cd8827a0fd59d5a38496544018dfa72

See more details on using hashes here.

File details

Details for the file nimble_aws-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: nimble_aws-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 14.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.5 CPython/3.11.10 Linux/6.5.0-1025-azure

File hashes

Hashes for nimble_aws-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c4d1ae6e256ca0d5058905eba411e708118e061f42d9052e335a1948a5312e61
MD5 696d146f7bf71c239a2690d314d46b46
BLAKE2b-256 91a0bd638b5b74adac8e0bcebd45950187e99b4e7b5cc7dfc1302fc68357d035

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