Skip to main content

An easy-to-use extension for Discord.py and Pycord

Project description

NovaCord-py

An easy-to-use extension for Discord.py and Pycord with some utility functions.

Features

✏️ Reduce boilerplate code

  • Easy cog management
  • Embed templates
  • Datetime and file utilities
  • Wrapper for aiosqlite and asyncpg

✨ Error handling

  • Automatic error handling for slash commands
  • Error webhook reports
  • Custom logging

📚 i18n

  • Slash command translation (groups, options, choices)
  • Translate messages, embeds, views, modals and more

⚙️ Extensions

  • Help command - Automatically generate a help command for your bot
  • Status changer - Change the bot's status in an interval
  • Blacklist - Block users from using your bot

Installing

Python 3.9 or higher is required.

pip install novacordpy

You can also install the latest version from GitHub. Note that this version may be unstable and requires git to be installed.

pip install git+https://github.com/NovaCord-at/NovaCord-py

If you need the latest version in your requirements.txt file, you can add this line:

novacordpy @ git+https://github.com/NovaCord-at/NovaCord-py

Useful Links

Examples

  • For more examples, see the example repository or the sample code.
  • Note: It's recommended to load the token from a .env file instead of hardcoding it. EzCord can automatically load the token if a TOKEN variable is present in the .env file.

Pycord

import novacordpy
import discord

bot = novacordpy.Bot(
    intents=discord.Intents.default()
)

if __name__ == "__main__":
    bot.load_cogs("cogs")  # Load all cogs in the "cogs" folder
    bot.run("TOKEN")

Discord.py

import asyncio
import discord
import novacordpy


class Bot(novacordpy.Bot):
    def __init__(self):
        super().__init__(intents=discord.Intents.default())

    async def setup_hook(self):
        await super().setup_hook()
        await self.tree.sync()


async def main():
    async with Bot() as bot:
        bot.add_help_command()
        bot.load_cogs("cogs")  # Load all cogs in the "cogs" folder
        await bot.start("TOKEN")


if __name__ == "__main__":
    asyncio.run(main())

Contributing

You are welcome to contribute to this repository! Please refer to the full contribution guide.

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

novacordpy-0.1.10.tar.gz (59.0 kB view details)

Uploaded Source

Built Distribution

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

novacordpy-0.1.10-py3-none-any.whl (66.9 kB view details)

Uploaded Python 3

File details

Details for the file novacordpy-0.1.10.tar.gz.

File metadata

  • Download URL: novacordpy-0.1.10.tar.gz
  • Upload date:
  • Size: 59.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for novacordpy-0.1.10.tar.gz
Algorithm Hash digest
SHA256 5483dff1a14b3bd63b0338a915ee21468c385a580002e67022dbeef7c8785f1f
MD5 ba2a04d77dda99491502ec65ee2c47f6
BLAKE2b-256 775bd82a32e1f5681a661366dec7cc94899abc8d0e31ec7a3e855ae705a7fe2e

See more details on using hashes here.

Provenance

The following attestation bundles were made for novacordpy-0.1.10.tar.gz:

Publisher: python-publish.yml on NovaCord-at/NovaCord-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file novacordpy-0.1.10-py3-none-any.whl.

File metadata

  • Download URL: novacordpy-0.1.10-py3-none-any.whl
  • Upload date:
  • Size: 66.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for novacordpy-0.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 0fcf650a3c3e15a34e544e3bd664aba76389ca565d12458c44b0992250bbab80
MD5 d2cce8551249c6d04b8ea859685b3f1f
BLAKE2b-256 8ae710521c92d1baa6bb3f1646b86b04deabfe6f6edeee0e6c14d1ef3fdfcf9e

See more details on using hashes here.

Provenance

The following attestation bundles were made for novacordpy-0.1.10-py3-none-any.whl:

Publisher: python-publish.yml on NovaCord-at/NovaCord-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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