Skip to main content

Not another freaking fork

Project description

PyPI Downloads Code style: black black-formatted CodeQL Discord Documentation Status

What is this?

This is NAFF, a python API wrapper for Discord. NAFF is intended to be fast, easy to use, and easily modified to suit your needs.

Features:

  • ✅ 100% coverage of the application commands API
  • ✅ Dynamic cache with TTL support
  • ✅ Modern and Pythonic API
  • ✅ Proper rate-limit handling
  • ✅ Feature parity with most other Discord API wrappers

Is this just another Discord.py fork?

While this library shares features and some stylistic choices with discord.py, it is completely separate from them. We think discord.py is a fantastic library, but we disagree with the direction and design decisions that were made by it.

How do I use this?

Here is a basic example:

from naff import Client, Button, ButtonStyles, CommandTypes, context_menu, prefixed_command, listen

bot = Client(sync_interactions=True)


@listen()
async def on_startup():
    print("Ready")
    print(f"This bot is owned by {bot.owner}")


@prefixed_command()
async def test_button(ctx):
    await ctx.send("Blurple button example!", components=Button(ButtonStyles.BLURPLE, "Click me"))


@context_menu(name="User menu", context_type=CommandTypes.USER, scopes=[931832853770149918])
async def user_context(ctx):
    await ctx.send("Context menu example!", ephemeral=True)


bot.start("TOKEN")

For more examples check out our examples repo or the docs. You also can explore projects with the NAFF topic or older dis-snek topic.

If you get stuck join our Discord server.

"Can I contribute to this project?"

Of course, we welcome all contributions to this library. Just ensure you follow our requirements. If youre stuck for things to contribute, check out our GitHub Projects for inspiration.

Links:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

naff-1.10.0.tar.gz (630.9 kB view details)

Uploaded Source

Built Distribution

naff-1.10.0-py3-none-any.whl (685.5 kB view details)

Uploaded Python 3

File details

Details for the file naff-1.10.0.tar.gz.

File metadata

  • Download URL: naff-1.10.0.tar.gz
  • Upload date:
  • Size: 630.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.4

File hashes

Hashes for naff-1.10.0.tar.gz
Algorithm Hash digest
SHA256 d0ab71c39ea5bf352228f0bc3d3dfe3610122cb01733bca4565497078de95650
MD5 9d6ed9cb6699dd99f4f0b90a76944120
BLAKE2b-256 eebaa3808889181f5a752b54711a1a059aa068d5996943e4e2c9b1fcd0797525

See more details on using hashes here.

File details

Details for the file naff-1.10.0-py3-none-any.whl.

File metadata

  • Download URL: naff-1.10.0-py3-none-any.whl
  • Upload date:
  • Size: 685.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.4

File hashes

Hashes for naff-1.10.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bb28ef19efb3f8e04f3569a3aac6b3e2738cf5747dea0bed483c458588933682
MD5 7aa8d2f4c5d9ba875bd4efcc29b7b9ae
BLAKE2b-256 f71471a1ff764da13116760b269a3744c5a95dc2c389dc20cce04cfc877217d2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page