LibBotUniversal

PyPI - License Gitea Release PyPI - Python Version Code style: black

Handy library for Telegram/Discord bots development. ## Getting started There are different sub-packages available: * pyrogram - Telegram bots with Pyrogram's fork "Pyrofork" * pycord - Discord bots with Pycord * speed - Performance improvements * dev - Dependencies for package development purposes You can freely choose any sub-package you want, as well as add multiple (comma-separated) or none at all. ```shell # Only general features pip install libbot # Only with Pyrogram pip install libbot[pyrogram] # With Pycord and Performance improvements pip install libbot[pycord,speed] ``` ## Examples ### Pyrogram ```python from libbot.pyrogram.classes import PyroClient def main(): client: PyroClient = PyroClient() try: client.run() except KeyboardInterrupt: print("Shutting down...") finally: exit() if __name__ == "__main__": main() ``` ### Pycord ```python from discord import Intents from libbot.utils import config_get from libbot.pycord.classes import PycordBot async def main(): intents: Intents = Intents.default() bot: PycordBot = PycordBot(intents=intents) bot.load_extension("cogs") try: await bot.start(config_get("bot_token", "bot")) except KeyboardInterrupt: print("Shutting down...") await bot.close() if __name__ == "__main__": loop = asyncio.get_event_loop() loop.run_until_complete(main()) ``` ## Config examples For bot config examples please check the examples directory. Without a valid config file, the bot won't start at all, so you need to make sure the correct config file is used.