Skip to main content

A Python wrapper for the Discord 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.

A full fork of Rapptz’s Discord.py library, with new features added on top.

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 novus

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

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

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

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

To install the development version, do the following:

$ git clone https://github.com/Voxel-Fox-Ltd/novus
$ cd novus
$ 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 discord

class MyClient(discord.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 discord
from discord.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

novus-0.2.5.tar.gz (963.7 kB view details)

Uploaded Source

Built Distribution

novus-0.2.5-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file novus-0.2.5.tar.gz.

File metadata

  • Download URL: novus-0.2.5.tar.gz
  • Upload date:
  • Size: 963.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.11

File hashes

Hashes for novus-0.2.5.tar.gz
Algorithm Hash digest
SHA256 5d707251759c7fa1c7a503ff2c3bf6edbd5974db41cf72d3845c5d1e9baf2144
MD5 7686c5f9dc90541180eedec5aeca531b
BLAKE2b-256 41ac9b4badcbe144e20199b8cf9b20378ec9887e0e410f1a445655dc042899fe

See more details on using hashes here.

File details

Details for the file novus-0.2.5-py3-none-any.whl.

File metadata

  • Download URL: novus-0.2.5-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.11

File hashes

Hashes for novus-0.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 ba3c3ddb4e9d5e551511124383ee21bbef2de242f985a331c8df6f6dcb5bf42f
MD5 5cf3564fc5f94f98ea9f83285fcc0ab9
BLAKE2b-256 b338c5f74776200ffd231b396e7a3935d5f6e275cc0c73a05734a3ced630cd07

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