Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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: 3 months ago
JSON representation
An Async Bot/API wrapper for Twitch made in Python.
- Host: GitHub
- URL: https://github.com/TwitchIO/TwitchIO
- Owner: PythonistaGuild
- License: mit
- Created: 2017-10-08T04:19:33.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2024-09-01T14:23:33.000Z (3 months ago)
- Last Synced: 2024-09-03T04:08:24.774Z (3 months ago)
- Topics: api, async, bot-framework, hacktoberfest, python, python-twitch-api, python3, twitch, twitch-api, twitch-bot, twitch-irc, twitchirc, wrapper
- Language: Python
- Homepage: https://twitchio.dev
- Size: 4.41 MB
- Stars: 785
- Watchers: 19
- Forks: 163
- Open Issues: 18
-
Metadata Files:
- Readme: README.rst
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- awesome-twitch-dev - TwitchIO/TwitchIO - Async Bot/API wrapper for Twitch made in Python. (Libraries / Python)
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 - DownloadsTwitchIO 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 `_