Skip to content

Features

AIOCLI features

AIOCLI provides you with the following:

Native-based

  • Full compatible with Python's argparse module. Nothing new to learn.

  • Completely typed based on standard Python 3.7 type hints. Fewer bugs, IDEs friendly.

Async support

  • Works and awaited through run_app(...) method like AIOHTTP library. Easy to use.

  • Allow set an event loop, by default get_event_loop(). Better third party integrations.

  • Handle signal’s life-cycle using CommandHooks. Great UNIX signals management.

Dependency Injection

  • Always must be functions whether kind be "sync", async or yield. Solves several aio issues.

  • Each dependency can have dependencies like a "graph". Avoid making a mess.

  • Each dependency allows caching. Better performance.

Serverless support

  • Cloud providers: AWS Lambda, Azure Function and Google Cloud Function. Go serverless.

  • Custom: Wrapping run_app function and changing default argument values. Anything else?

State support

  • Allow to have a container to share between commands. No complications.

Test support

  • Provides TestCommander and TestClient utilities. No more excuses not to test.

Editor support

Visual Studio Code editor support

PyCharm editor support