A sane Discord API for Python 3 built on asyncio and good intentions
Project description
hikari
An opinionated, static typed Discord API for Python3 and asyncio.
Built on good intentions and the hope that it will be extendable and reusable, rather than an obstacle for future development.
import hikari
bot = hikari.Bot(token="...")
@bot.listen()
async def ping(event: hikari.MessageCreateEvent) -> None:
# If a non-bot user sends a message "hk.ping", respond with "Pong!"
if not event.message.author.is_bot and event.message.content.startswith("hk.ping"):
await event.message.reply("Pong!")
bot.run()
Events are determined by the type annotation on the event parameter, or
alternatively as a type passed to the @bot.listen()
decorator, if you do not
want to use type hints.
@bot.listen(hikari.MessageCreateEvent)
async def ping(event):
...
Installation
Install hikari from PyPI with the following command:
python -m pip install hikari -U --pre
# Windows users may need to run this instead...
py -3 -m pip install hikari -U --pre
Additional libraries
You may wish to use a command framework on top of Hikari so that you can start writing a bot quickly without implementing your own command handler.
Hikari does not include a command framework by default, so you will want to pick a third party library to do it.
lightbulb
- a simple and easy to use command framework for Hikari.
Developing Hikari
If you wish to contribute something, you should first start by cloning the repository.
The first thing you should run is pip install nox
to install nox. This handles
running predefined tasks and pipelines.
To initialize a development environment and install everything you need, simply
run nox -s init
. This will create a venv and install everything you need in it
to get started.
Once this is complete, you can run nox
without any arguments to ensure
everything builds and is correct.
Where can I start?
Check out the issues tab on GitHub. If you are nervous, look for issues marked as for something easy to start with!
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
File details
Details for the file hikari-2.0.0.dev74.tar.gz
.
File metadata
- Download URL: hikari-2.0.0.dev74.tar.gz
- Upload date:
- Size: 251.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b6a3fd1b41a93b748d021c0cb05f2b58d26a9b4c469c486da4d937bf5d284c25 |
|
MD5 | abfd4cd6c5f9e6358e818144bda6b547 |
|
BLAKE2b-256 | 72103ef9a366b624170ddc65675aa0dae41ee560188fc80dfbfb97cb80d5f94b |
File details
Details for the file hikari-2.0.0.dev74-py3-none-any.whl
.
File metadata
- Download URL: hikari-2.0.0.dev74-py3-none-any.whl
- Upload date:
- Size: 332.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 00560228aa1aaee62978a59578656e777c6e51bc2793006c94b353004fc73e4b |
|
MD5 | 26acee53c611b223bf76f9af4790f643 |
|
BLAKE2b-256 | 54095bbe657ed2d9bae566c537ae293cabc2db0c4905cb3aee642c7ac86d5282 |