Skip to main content

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

Project description

EzCord

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 ezcord

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/tibue99/ezcord

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

ezcord @ git+https://github.com/tibue99/ezcord

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 ezcord
import discord

bot = ezcord.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 ezcord


class Bot(ezcord.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

ezcord_py-0.6.4.tar.gz (54.0 kB view details)

Uploaded Source

Built Distribution

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

ezcord.py-0.6.4-py3-none-any.whl (61.7 kB view details)

Uploaded Python 3

File details

Details for the file ezcord_py-0.6.4.tar.gz.

File metadata

  • Download URL: ezcord_py-0.6.4.tar.gz
  • Upload date:
  • Size: 54.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.11.6

File hashes

Hashes for ezcord_py-0.6.4.tar.gz
Algorithm Hash digest
SHA256 be2a14116e3570cf7c50427d3747f9dc67a9a2d6019656d4532cfcbfdb8772d1
MD5 8020e090aae099e5e3231c9d1760c96a
BLAKE2b-256 f86b25fb210a0ad3f8cf0dcf12ae9de1cfb8c57691fea0fdf44aa5d3ae29482b

See more details on using hashes here.

File details

Details for the file ezcord.py-0.6.4-py3-none-any.whl.

File metadata

  • Download URL: ezcord.py-0.6.4-py3-none-any.whl
  • Upload date:
  • Size: 61.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.11.6

File hashes

Hashes for ezcord.py-0.6.4-py3-none-any.whl
Algorithm Hash digest
SHA256 94369b61e0c5e09f9d83153813ad05ce2fac46884bbb097cbcf7f05c444e0e80
MD5 8e1d771bb455f6c24c219c5aeef40ec2
BLAKE2b-256 3eb1f91c60a16a258a8b0069b3c5c118ea7812d8cc80762d9701d50a965b11f6

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