Skip to main content

A Python wrapper for the pygon API

Project description

Discord server invite PyPI version info PyPI supported Python versions

A modern, easy to use, feature-rich, and async ready API wrapper for Discord written in Python.

Key Features

  • Modern Pythonic API using async and await.

  • Proper rate limit handling.

  • Optimised in both speed and memory.

Installing

Python 3.8 or higher is required

To install the library without full voice support, you can just run the following command:

# Linux/macOS
python3 -m pip install -U pygon

# Windows
py -3 -m pip install -U pygon

Otherwise to get voice support you should run the following command:

# Linux/macOS
python3 -m pip install -U "pygon[voice]"

# Windows
py -3 -m pip install -U pygon[voice]

To install the development version, do the following:

$ git clone https://github.com/Code-ParagonX/pygon
$ cd pygon
$ python3 -m pip install -U .[voice]

Optional Packages

Please note that on Linux installing voice you must install the following packages via your favourite package manager (e.g. apt, dnf, etc) before running the above commands:

  • libffi-dev (or libffi-devel on some systems)

  • python-dev (e.g. python3.6-dev for Python 3.6)

Quick Example

import pygon

class MyClient(pygon.Client):
    async def on_ready(self):
        print('Logged on as', self.user)

    async def on_message(self, message):
        # don't respond to ourselves
        if message.author == self.user:
            return

        if message.content == 'ping':
            await message.channel.send('pong')

client = MyClient()
client.run('token')

Bot Example

import pygon
from pygon.ext import commands

bot = commands.Bot(command_prefix='>')

@bot.command()
async def ping(ctx):
    await ctx.send('pong')

bot.run('token')

You can find more examples in the examples directory.

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

pygon-2.0.0a0.tar.gz (818.0 kB view details)

Uploaded Source

Built Distribution

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

pygon-2.0.0a0-py2.py3-none-any.whl (907.3 kB view details)

Uploaded Python 2Python 3

File details

Details for the file pygon-2.0.0a0.tar.gz.

File metadata

  • Download URL: pygon-2.0.0a0.tar.gz
  • Upload date:
  • Size: 818.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.0

File hashes

Hashes for pygon-2.0.0a0.tar.gz
Algorithm Hash digest
SHA256 b0fe1c97ee94962000ba61c1dcf2d99c0f02b75da6c7d9498b4a618a3d3de138
MD5 f713b2f4f6b6ae7d905c5a5a8042847e
BLAKE2b-256 f391535cb80c3924ea4502c976a6ac70e37cfa2aa8d4e6c5baeec192e846e5a8

See more details on using hashes here.

File details

Details for the file pygon-2.0.0a0-py2.py3-none-any.whl.

File metadata

  • Download URL: pygon-2.0.0a0-py2.py3-none-any.whl
  • Upload date:
  • Size: 907.3 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.0

File hashes

Hashes for pygon-2.0.0a0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 6e98d8359b90f5029fce8b54b5b62460dd11ec46803a917ce68c1d3c2ebe8129
MD5 2360c3b916fd842964227521e787dfe7
BLAKE2b-256 723f9b9e159bb57f44d559c5ae12a7553524863ae5cbb6f678f585f1a7ad7fa3

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