Skip to main content

A sane Discord API for Python 3 built on asyncio and good intentions

Project description

hikari

An opinionated Discord API for Python 3 and asyncio.

THIS API IS CURRENTLY IN A PRE-ALPHA STAGE, SO NEW VERSIONS WILL CONTAIN BREAKING CHANGES WITHOUT A MINOR VERSION INCREMENTATION. ALL FEATURES ARE PROVISIONAL AND CAN CHANGE AT ANY TIME UNTIL THIS API IS IN A USABLE STATE FOR A FULL FIRST RELEASE.

Please VISIT MY DISCORD if you wish to receive progress updates or help out, any help and contribution is more than welcome :-)

If you wish to explore the code in an online interactive viewer, you can use Sourcegraph on master and staging too!

What is this API?

A base Python Discord API framework for CPython 3.8 Designed for ease of use, customization, and sane defaults.

This API is designed to provide the pure-python interface to the RESTful Discord API and the Gateway. This will provide a set of basic models and abstractions that can be used to build a basic Discord bot in Python with asyncio in a logical, idiomatic, Pythonic, concise way.

Other APIs may exist that are faster, use less memory, or are smaller. I wont dispute that. The aim of this library is to provide a solid and consistent interface that can be relied upon by the end user, and to provide regular updates that are able to be opted into.

I also aim to provide as much automated test coverage as possible. I want to be able to immediately prove that a function does what is expected of it to provide hard evidence that a build is not fundamentally broken before deploying it.

The final aim is for maintainability. This API attempts to be as documented and expandable as possible internally. If something isn't right and you have some understanding of Python, hopefully you should be able to pick it up and tweak it to solve your use case, rather than fighting inflexible internal abstractions that hide the information you need.

What is this API not?

This API is not for people using anything older than CPython 3.8.

It currently is not able to provide voice functionality. Again, this may be added in the future.

FAQ

Contributing to Hikari

View the contributing guide!

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

hikari-1.0.1.dev12.tar.gz (129.2 kB view details)

Uploaded Source

Built Distribution

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

hikari-1.0.1.dev12-py3-none-any.whl (168.6 kB view details)

Uploaded Python 3

File details

Details for the file hikari-1.0.1.dev12.tar.gz.

File metadata

  • Download URL: hikari-1.0.1.dev12.tar.gz
  • Upload date:
  • Size: 129.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.1

File hashes

Hashes for hikari-1.0.1.dev12.tar.gz
Algorithm Hash digest
SHA256 8068512b8aace9cfe7f183babce705051310ace209892e5c649f23bdef3ad199
MD5 787f027fae5d423f5d9a98ba3c77ac1c
BLAKE2b-256 dc0757ece82fe7307ce9ad0a14de1ce89bcb06a4b56d0ddcb7291f74d8c9249a

See more details on using hashes here.

File details

Details for the file hikari-1.0.1.dev12-py3-none-any.whl.

File metadata

  • Download URL: hikari-1.0.1.dev12-py3-none-any.whl
  • Upload date:
  • Size: 168.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.1

File hashes

Hashes for hikari-1.0.1.dev12-py3-none-any.whl
Algorithm Hash digest
SHA256 e333b6c17b0c6995491c7306c687eafbcc832a74552f06fc8ee5bc9f37677aa2
MD5 ad8247c4b28bb1b8f083d1a1b5be5105
BLAKE2b-256 09fc712c6cb86aeedcfbe058488823c100863e2f26849cee32cd2f16469844f6

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