awsync
An asynchronous, fully-typed AWS API library with a focus on being understandable, reliable, and maintainable.
Getting Started
📖 Read the documentation!
NOTE: Currently a work in progress! Only a few API methods currently implemented for testing and development.
Usage
"Module main."
from asyncio import run
from httpx import AsyncClient
from awsync.client import Client
from awsync.models.aws import Region, Credentials
async def main() -> int:
"Main function."
async with AsyncClient() as httpx_client:
client = Client(
credentials=Credentials.from_environment(),
httpx_client=httpx_client,
)
response = await client.list_stack_resources(
region=Region.us_east_1, stack_name="Example-Stack-Name"
)
print(response)
return 0
if __name__ == "__main__":
run(main())
Local Developer Setup
Requirements:
Install mise then run mise run init to setup python, poetry, and install dependencies.
Repository Mangement
This repository uses mise for tool and task management.
List all available commands with mise tasks.
Run all pull request checks locally with mise run pr
Package Management
This repository uses poetry for python package management.
poetry install --syncinstall/update dependencies.poetry addadd a dependency ie.poetry add black.poetry add -Dadd a development dependency ie.poetry add -D black.poetry removeremove a dependency ie.poetry remove black.poetry shellactivate the python virtual environment for access to installed packages.exitexit the python virtual environment.