A command handler for hikari with a focus on type-safety and correctness.
Project description
hikari-arc
A command handler for hikari with a focus on type-safety and correctness.
Installation
To install arc, run the following command:
pip install -U hikari-arc
To check if arc has successfully installed or not, run the following:
python3 -m arc
# On Windows you may need to run:
py -m arc
[!NOTE]
hikari-arc
requires a Python version of at least 3.10.
If you're just getting started, you may also use the template repository to get started with.
Basic Usage
import hikari
import arc
bot = hikari.GatewayBot("TOKEN") # or hikari.RESTBot
client = arc.GatewayClient(bot) # or arc.RESTClient
@client.include
@arc.slash_command("hi", "Say hi!")
async def ping(
ctx: arc.GatewayContext,
user: arc.Option[hikari.User, arc.UserParams("The user to say hi to.")]
) -> None:
await ctx.respond(f"Hey {user.mention}!")
bot.run()
To get started with arc
, see the documentation, or the examples.
Issues and support
For general usage help or questions, see the hikari discord, if you have found a bug or have a feature request, feel free to open an issue!
Contributing
See Contributing.
Acknowledgements
arc
is in large part a combination of all the parts I like in other command handlers, with my own spin on it. The following projects have inspired me and aided me greatly in the design of this library:
hikari-lightbulb
- The library initially started as a reimagination of lightbulb, it inherits a similar project structure and terminology.Tanjun
- For the idea of usingtyping.Annotated
and dependency injection in a command handler.arc
also uses the same dependency injection library,Alluka
, under the hood.hikari-crescent
The design of hooks is largely inspired bycrescent
.FastAPI
- Some design ideas and most of the documentation configuration derives fromFastAPI
.
Links
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for hikari_arc-1.3.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fa09b1f4a1e87fa13302115ee66cbd48ff68e9af3c3481fb4e0ad1b52d09207c |
|
MD5 | eb8cc464c1164ff0e57d855b029355b5 |
|
BLAKE2b-256 | 9c53301486f57b97fbc2a07a4b4afa3ec21f492261f65d84bb50248cbede87cd |