{"id":13458787,"url":"https://github.com/tibue99/ezcord","last_synced_at":"2025-12-24T21:34:43.327Z","repository":{"id":66929915,"uuid":"587526691","full_name":"tibue99/ezcord","owner":"tibue99","description":"An easy-to-use extension for Discord.py and Pycord","archived":false,"fork":false,"pushed_at":"2024-10-29T13:36:50.000Z","size":312,"stargazers_count":92,"open_issues_count":0,"forks_count":20,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-10-29T16:10:00.604Z","etag":null,"topics":["bot","discord","discord-bot","discord-py","ezcord","py-cord","pycord","python"],"latest_commit_sha":null,"homepage":"https://ezcord.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tibue99.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-01-11T00:33:36.000Z","updated_at":"2024-10-29T13:36:54.000Z","dependencies_parsed_at":"2023-06-04T16:15:44.897Z","dependency_job_id":"bb07bfda-d77d-4f6a-a31e-6ea58fea319a","html_url":"https://github.com/tibue99/ezcord","commit_stats":null,"previous_names":[],"tags_count":30,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tibue99%2Fezcord","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tibue99%2Fezcord/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tibue99%2Fezcord/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tibue99%2Fezcord/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tibue99","download_url":"https://codeload.github.com/tibue99/ezcord/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247128753,"owners_count":20888235,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bot","discord","discord-bot","discord-py","ezcord","py-cord","pycord","python"],"created_at":"2024-07-31T09:00:57.327Z","updated_at":"2025-12-24T21:34:43.258Z","avatar_url":"https://github.com/tibue99.png","language":"Python","funding_links":[],"categories":["Forks and Wrappers"],"sub_categories":["Miscellaneous"],"readme":"[![EzCord](https://ezcord.readthedocs.io/en/latest/_static/ezcord.png)](https://github.com/tibue99/ezcord)\n\n[![](https://img.shields.io/discord/1010915072694046794?label=discord\u0026style=for-the-badge\u0026logo=discord\u0026color=5865F2\u0026logoColor=white)](https://discord.gg/zfvbjTEzv6)\n[![](https://img.shields.io/pypi/v/ezcord.svg?style=for-the-badge\u0026logo=pypi\u0026color=yellow\u0026logoColor=white)](https://pypi.org/project/ezcord/)\n[![](https://img.shields.io/pypi/l/ezcord?style=for-the-badge)](https://github.com/tibue99/ezcord/blob/main/LICENSE)\n[![](https://aschey.tech/tokei/github/tibue99/ezcord?style=for-the-badge)](https://github.com/tibue99/ezcord)\n\nAn easy-to-use extension for [Discord.py](https://github.com/Rapptz/discord.py)\nand [Pycord](https://github.com/Pycord-Development/pycord) with some utility functions.\n\n## Features\n### ✏️ Reduce boilerplate code\n- Easy cog management\n- Embed templates\n- Datetime and file utilities\n- Wrapper for [aiosqlite](https://github.com/omnilib/aiosqlite) and [asyncpg](https://github.com/MagicStack/asyncpg)\n\n### ✨ Error handling\n- Automatic error handling for slash commands\n- Error webhook reports\n- Custom logging\n\n### 📚 i18n\n- Slash command translation (groups, options, choices)\n- Translate messages, embeds, views, modals and more\n\n### ⚙️ Extensions\n- **Help command** - Automatically generate a help command for your bot\n- **Status changer** - Change the bot's status in an interval\n- **Blacklist** - Block users from using your bot\n\n## Installing\nPython 3.9 or higher is required.\n```\npip install ezcord\n```\nYou can also install the latest version from GitHub. Note that this version may be unstable\nand requires [git](https://git-scm.com/downloads) to be installed.\n```\npip install git+https://github.com/tibue99/ezcord\n```\nIf you need the latest version in your `requirements.txt` file, you can add this line:\n```\nezcord @ git+https://github.com/tibue99/ezcord\n```\n\n## Useful Links\n- [Documentation](https://ezcord.readthedocs.io/) | [Getting started](https://ezcord.readthedocs.io/en/latest/pages/getting_started.html)\n- [Pycord](https://docs.pycord.dev/) | [Discord.py](https://discordpy.readthedocs.io/en/stable/)\n- [PyPi](https://pypi.org/project/ezcord/)\n\n## Examples\n- For more examples, see the [example repository](https://github.com/tibue99/ezcord_template)\nor the [sample code](https://ezcord.readthedocs.io/en/latest/examples/examples.html).\n- **Note:** It's recommended to [load the token](https://guide.pycord.dev/getting-started/creating-your-first-bot#protecting-tokens) from a `.env` file instead of hardcoding it.\nEzCord can automatically load the token if a `TOKEN` variable is present in the `.env` file.\n\n### Pycord\n```py\nimport ezcord\nimport discord\n\nbot = ezcord.Bot(\n    intents=discord.Intents.default()\n)\n\nif __name__ == \"__main__\":\n    bot.load_cogs(\"cogs\")  # Load all cogs in the \"cogs\" folder\n    bot.run(\"TOKEN\")\n```\n\n### Discord.py\n```py\nimport asyncio\nimport discord\nimport ezcord\n\n\nclass Bot(ezcord.Bot):\n    def __init__(self):\n        super().__init__(intents=discord.Intents.default())\n\n    async def setup_hook(self):\n        await super().setup_hook()\n        await self.tree.sync()\n\n\nasync def main():\n    async with Bot() as bot:\n        bot.add_help_command()\n        bot.load_cogs(\"cogs\")  # Load all cogs in the \"cogs\" folder\n        await bot.start(\"TOKEN\")\n\n\nif __name__ == \"__main__\":\n    asyncio.run(main())\n```\n\n## Contributing\nYou are welcome to contribute to this repository! Please refer to the full [contribution guide](https://ezcord.readthedocs.io/en/latest/pages/contributing.html).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftibue99%2Fezcord","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftibue99%2Fezcord","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftibue99%2Fezcord/lists"}