Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/TwitchIO/TwitchIO

An Async Bot/API wrapper for Twitch made in Python.
https://github.com/TwitchIO/TwitchIO

api async bot-framework hacktoberfest python python-twitch-api python3 twitch twitch-api twitch-bot twitch-irc twitchirc wrapper

Last synced: 2 months ago
JSON representation

An Async Bot/API wrapper for Twitch made in Python.

Awesome Lists containing this project

README

        

.. image:: https://raw.githubusercontent.com/TwitchIO/TwitchIO/master/logo.png
:align: center


.. image:: https://img.shields.io/badge/Python-3.7%20%7C%203.8%20%7C%203.9-blue.svg
:target: https://www.python.org

.. image:: https://img.shields.io/github/license/TwitchIO/TwitchIO.svg
:target: ./LICENSE

.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
:target: https://github.com/psf/black

.. image:: https://img.shields.io/pypi/dm/twitchio?color=black
:target: https://pypi.org/project/twitchio
:alt: PyPI - Downloads

TwitchIO is an asynchronous Python wrapper around the Twitch API and IRC, with a powerful command extension for creating Twitch Chat Bots. TwitchIO covers almost all of the new Twitch API and features support for commands, PubSub, Webhooks, and EventSub.

Documentation
---------------------------
For the Official Documentation: `Click Here! `_

Support
---------------------------
For support using TwitchIO, please join the official `support server
`_ on `Discord `_.

|Discord|

.. |Discord| image:: https://img.shields.io/discord/490948346773635102?color=%237289DA&label=Pythonista&logo=discord&logoColor=white
:target: https://discord.gg/RAKc3HF

Installation
---------------------------
TwitchIO requires **Python 3.7+**. You can download the latest version of Python `here `_.

**Windows**

.. code:: sh

py -m pip install -U twitchio

**Linux**

.. code:: sh

python -m pip install -U twitchio

Access Tokens
---------------------------
Visit `Token Generator `_ for a simple way to generate tokens for use with TwitchIO.

Getting Started
---------------------------
A simple Chat Bot.

.. code:: python

from twitchio.ext import commands

class Bot(commands.Bot):

def __init__(self):
# Initialise our Bot with our access token, prefix and a list of channels to join on boot...
super().__init__(token='ACCESS_TOKEN', prefix='?', initial_channels=['...'])

async def event_ready(self):
# We are logged in and ready to chat and use commands...
print(f'Logged in as | {self.nick}')
print(f'User id is | {self.user_id}')

@commands.command()
async def hello(self, ctx: commands.Context):
# Send a hello back!
await ctx.send(f'Hello {ctx.author.name}!')

bot = Bot()
bot.run()

Contributing
---------------------------
TwitchIO currently uses the `Black `_ formatter to enforce sensible style formatting.

Before creating a Pull Request it is encouraged you install and run black on your code.

The Line Length limit for TwitchIO is **120**.

For installation and usage of Black visit: `Black Formatter `_

For integrating Black into your IDE visit: `Black IDE Usage `_

Special Thanks
---------------------------
Thank you to all those who contribute and help TwitchIO grow.

Special thanks to:

`LostLuma (Lilly) `_

`Harmon `_

`Tom `_

`Tesence `_

`Adure `_

`Scragly `_

`Chillymosh `_

If I have forgotten anyone please let me know <3: `EvieePy `_