Skip to content

Merge 3.0 into main #480

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 816 commits into from
Jan 27, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
816 commits
Select commit Hold shift + click to select a range
1de998d
Carious docs additions
Oct 30, 2024
348bf8f
Add mixin class for docs compat
Oct 30, 2024
f8b902e
Add Client.listen
Oct 30, 2024
9ab7898
Add MessageRejectedError
Oct 30, 2024
4e161d0
Various user.py changes
Oct 30, 2024
4fe5ab3
Colour classmethod additions and some utils.
Oct 30, 2024
2e3be07
Fix some scopes docs
Oct 30, 2024
21918ce
Map some eventsub subscriptions to short names
Oct 30, 2024
dd13832
Remove channel. from EventSub dispatched events
Oct 30, 2024
ee1d8a1
Add various features to commands ext including guards and docs.
Oct 30, 2024
df89192
Add ext.commands to pyproject
EvieePy Oct 30, 2024
4bcc382
Export options types.
EvieePy Oct 30, 2024
4b0d33d
Remove type alias
EvieePy Oct 30, 2024
c437ebd
Move types around
EvieePy Oct 30, 2024
aba936f
Prefix type fix
EvieePy Oct 30, 2024
6ddee1b
Add eventsub to pyproject
Oct 30, 2024
f01cb12
Add models to pyproject
Oct 31, 2024
dd1f122
Fix imports in commands ext
Oct 31, 2024
5e355bd
Move setup and token assignment call order
Oct 31, 2024
cfb60ba
Revert setup_hook position but keep token assignment.
Oct 31, 2024
c9fc373
return token resp from add_token
Oct 31, 2024
b45fe9f
Fix eventsub event parsing
Oct 31, 2024
bad0a5a
Add alpha example
Oct 31, 2024
a6d8d8f
Add new CCLs
chillymosh Nov 2, 2024
c89b6a8
Add missing moderator scopes
Nov 3, 2024
9104666
Module loading, unloading, reloading
chillymosh Nov 3, 2024
7ed9d86
Adjust Exception names and add docs
chillymosh Nov 3, 2024
d482e73
Update references to Exceptions
chillymosh Nov 3, 2024
1815547
Fixx missing raw in HTTP
Nov 3, 2024
6b2b2be
Merge branch 'dev/3.0' of https://github.com/PythonistaGuild/Twitchio…
Nov 3, 2024
2a53b43
Merge branch 'dev/3.0' of https://github.com/PythonistaGuild/TwitchIO…
chillymosh Nov 3, 2024
786b057
Add module example
chillymosh Nov 3, 2024
911470e
Use built in exception instead
chillymosh Nov 4, 2024
07e5018
Make base exception and add docstrings
chillymosh Nov 4, 2024
65d4518
Additional docstrings for exceptions
chillymosh Nov 4, 2024
050bb42
Add display_name to PartialUser
chillymosh Nov 4, 2024
a4f1671
Add User to docs
chillymosh Nov 5, 2024
1df568c
Fix component doc build errors
chillymosh Nov 5, 2024
d5595ec
Add quickstart to docs
chillymosh Nov 5, 2024
3b1281c
Eventsub references
chillymosh Nov 5, 2024
f3d84e8
Add get_context method (No docs)
Nov 5, 2024
a2639c2
Correct typo in examples
chillymosh Nov 6, 2024
568ab1a
Rename ChatMessage eventsub type
chillymosh Nov 6, 2024
0e01993
Create links for event ref table
chillymosh Nov 6, 2024
899c268
Add missing eventsub subscription methods
chillymosh Nov 6, 2024
7da914f
Update Literal docstrings with typing
chillymosh Nov 6, 2024
ffc579f
Update eventsub model docs
chillymosh Nov 6, 2024
fde379c
Update Helix PollChoice to be shared with Eventsub
chillymosh Nov 6, 2024
c0beb49
Rename models to helix_models
chillymosh Nov 6, 2024
014a10a
Add eventsub models
chillymosh Nov 6, 2024
f4ed8da
Update Literal in helix models
chillymosh Nov 6, 2024
7f4b08f
Add get_component
chillymosh Nov 9, 2024
efb9c26
Fix logging when event_error fails
Nov 9, 2024
9f6b436
Fix typos and move datetime_z to utils
chillymosh Nov 9, 2024
48be5fc
Merge branch 'dev/3.0' of https://github.com/PythonistaGuild/TwitchIO…
chillymosh Nov 9, 2024
37ba7ca
add new util to all dunder
chillymosh Nov 9, 2024
fec3b5c
Add case_insensitive commands
Nov 9, 2024
7759f86
Merge branch 'dev/3.0' of https://github.com/PythonistaGuild/Twitchio…
Nov 9, 2024
3f786c8
Make sure args are pos-only
Nov 10, 2024
f79b783
Add some utilities required for argument parsing.
Nov 10, 2024
e787c0f
Add bool converter
Nov 10, 2024
71da029
Fix argument parsing when annotations are strings. Fix annotation order
Nov 10, 2024
150fb49
Fix event_error handling from component listeners.
Nov 12, 2024
c678175
Fix guard runner
EvieePy Nov 17, 2024
93e7fcb
Add cooldown docs
EvieePy Nov 18, 2024
3738f76
Add command cooldowns implementation
EvieePy Nov 18, 2024
056a511
Update project.toml
EvieePy Nov 18, 2024
ffd5a15
Remove setup.py (devN version specificer doesn't allow +git hases)
EvieePy Nov 18, 2024
a1309bb
Add version info to main command
EvieePy Nov 18, 2024
dee0033
Add git count for devN without hash
EvieePy Nov 18, 2024
a25d91e
More version specifier fixes.
EvieePy Nov 18, 2024
b1db109
Add 312 check to eval annotations
EvieePy Nov 18, 2024
332cd8b
Make offline_image_url optional
chillymosh Nov 18, 2024
9139deb
Allow setting Stream thumbnail dimensions
chillymosh Nov 18, 2024
9d56cef
Correct reprs
chillymosh Nov 18, 2024
7d5b779
Merge branch 'dev/3.0' of https://github.com/PythonistaGuild/TwitchIO…
chillymosh Nov 18, 2024
2a09512
Add golden kappa to hype train events
chillymosh Nov 22, 2024
3a05630
Ruff formatting
chillymosh Nov 22, 2024
8a3b310
Implement GCRA Cooldown algorithm
EvieePy Nov 23, 2024
2d7131d
Implement wait_until_ready method.
EvieePy Nov 23, 2024
cfa7bbe
Fix potential missing emotes in resub
chillymosh Dec 1, 2024
dfaf8c7
Update emotes in eventsub messages to handle None
chillymosh Dec 2, 2024
96ba2ed
Add initial ext.routines implementation.
EvieePy Dec 11, 2024
0c93596
Fix a small logic error in GCRACooldowns
EvieePy Dec 11, 2024
f18f52b
Fix weird bug in routines
EvieePy Dec 11, 2024
bd9a04c
Fix logging misspell in routines
EvieePy Dec 11, 2024
f605286
Fix examples in routines
EvieePy Dec 11, 2024
358a3ed
Add missing type annotation
chillymosh Dec 11, 2024
e233b6c
Add automod V2 subs
chillymosh Dec 11, 2024
09ba12f
fix on_error logic in routines
EvieePy Dec 13, 2024
87863af
Automod Message Hold V2 integration
chillymosh Dec 13, 2024
fefbd45
Merge branch 'dev/3.0' of https://github.com/PythonistaGuild/TwitchIO…
chillymosh Dec 13, 2024
0865fa4
MessageUpdate v2 integration
chillymosh Dec 13, 2024
b20a069
BlockedTerm rename
chillymosh Dec 13, 2024
2c0c3ca
Docs update
chillymosh Dec 13, 2024
5a7d9dc
Add starlette check in types.
EvieePy Dec 13, 2024
ddb6759
Temp Fix pyright issues until base class is propery implemented.
EvieePy Dec 14, 2024
9193844
Add unloading modules and components to close in Bot
EvieePy Dec 18, 2024
6707d6e
Docs for eventsub payloads
chillymosh Dec 20, 2024
d20bc83
Add bypass_global_guards kwarg to Command
EvieePy Dec 21, 2024
dee234b
Docs change
EvieePy Dec 21, 2024
619ec2c
Make docs a bit easier to read
EvieePy Dec 21, 2024
7519cf2
Remove hex value from var (CSS)
EvieePy Dec 21, 2024
81d2821
Make strong more contrasted on dark theme.
EvieePy Dec 21, 2024
42b4df1
strong shouldn't override links
EvieePy Dec 21, 2024
2b4497c
fix github url - missing forward slash
EvieePy Dec 21, 2024
6827efb
Update brand colour
EvieePy Dec 21, 2024
c04fcea
Increase readability in parameter lists
EvieePy Dec 21, 2024
fc7be2e
Add some more readability and reduce hue on inline-code
EvieePy Dec 21, 2024
45367a3
Reduce contrast between sig and code headers.
EvieePy Dec 21, 2024
d6459da
Remove weird button press behaviour
EvieePy Dec 21, 2024
04d3b88
More button fixes
EvieePy Dec 21, 2024
02a49eb
Adjust copy button
EvieePy Dec 21, 2024
71396c7
Remove copy button changes on light mode
EvieePy Dec 21, 2024
9678113
Remove thin sroll on html only
EvieePy Dec 21, 2024
ece8bfc
width should be auto not none
EvieePy Dec 21, 2024
44c93a9
Add charity campaign donation event
chillymosh Dec 21, 2024
587d9c3
Ensure user passed session receives headers, fixes #476
EvieePy Dec 23, 2024
08ce6cc
Update ruff
EvieePy Dec 23, 2024
629056f
Only init session once on HTTP
EvieePy Dec 23, 2024
b8fefda
Avoid multiple async call in HTTP
EvieePy Dec 23, 2024
bb08f39
Start token validator when a token is actually added; removes a unnec…
EvieePy Dec 23, 2024
3584061
Don't set global headers on client session
EvieePy Dec 23, 2024
0493b7f
Add keyword-arguments for loading and dumping tokens to Client.
EvieePy Dec 23, 2024
cc61f6f
Change `dump_tokens` to `save_tokens`; add override to `Client.close()`
EvieePy Dec 23, 2024
c4d22d2
Remove period from ext in Asset
EvieePy Dec 23, 2024
23828bc
Fix Stream.fetch_game erroring for streams without a set game (#478)
LostLuma Dec 23, 2024
4793f6a
Fix stream game id and name being empty strings instead of None
LostLuma Dec 24, 2024
20c232c
Docs fixes
chillymosh Dec 24, 2024
1556f41
Fix Prediction top_predictors
chillymosh Dec 28, 2024
ff02ae1
Fix routine entering recursive loop with .restart
EvieePy Dec 29, 2024
5e74e22
BroadcasterSubscriptions accounts for user_ids param
chillymosh Dec 30, 2024
2a17329
Update tiers to be Literal instead of string.
chillymosh Dec 31, 2024
bc0b740
More Literal changes
chillymosh Jan 2, 2025
ae831c2
Allow payload to be positional in Client.subscribe_*
EvieePy Jan 2, 2025
c8a44c4
Add Client.user and fetch User on login
EvieePy Jan 2, 2025
e5ecfd7
Add aiter directive (docs header)
EvieePy Jan 3, 2025
973b517
Remove ellipsis from aiter docs ext
EvieePy Jan 3, 2025
77a6a91
Import types_ as types.
EvieePy Jan 3, 2025
19e56de
Utils documentation
EvieePy Jan 3, 2025
f62ff8a
Add start of changelog and remove FAQ long name.
EvieePy Jan 3, 2025
0102e9f
Fix |prop| prolog
EvieePy Jan 3, 2025
807364d
Start of exception docs
EvieePy Jan 3, 2025
36c718e
Update README
EvieePy Jan 3, 2025
c2ccfa8
Update pyproject
EvieePy Jan 3, 2025
bf3d889
Run ruff
EvieePy Jan 3, 2025
cc07108
Add Route to docs and make public.
EvieePy Jan 3, 2025
1846af8
Ignore unused import
EvieePy Jan 3, 2025
bf5c448
Update aiter docs ext
EvieePy Jan 3, 2025
7c9e171
Fix circular import
EvieePy Jan 3, 2025
8953b0f
Base reference docs for adapters.
EvieePy Jan 3, 2025
3c775aa
Fix some docs
EvieePy Jan 3, 2025
cc7d098
Document MessageRejectedError
EvieePy Jan 3, 2025
c9e9059
Shuffle ToC
EvieePy Jan 3, 2025
bd75392
Remove signature of exceptions
EvieePy Jan 3, 2025
d5e36ed
Remove signature of Asset and Colour
EvieePy Jan 3, 2025
e3922fd
Remove signatures from all EventSub models
EvieePy Jan 3, 2025
6ab9381
Change blockquote colour
EvieePy Jan 3, 2025
814248a
Update installing and index docs
EvieePy Jan 3, 2025
f15a793
css class should be warn-tio not warn
EvieePy Jan 3, 2025
76a1aaa
Missing bracket
EvieePy Jan 3, 2025
214bbd9
Change expansion button colours
EvieePy Jan 4, 2025
8a19120
Update button again
EvieePy Jan 4, 2025
ee5fe6f
Update funding.
EvieePy Jan 4, 2025
ed1ed8c
Start documenting individual events
EvieePy Jan 4, 2025
2248bb8
Slim down admonitions
EvieePy Jan 4, 2025
21c7590
Add header links
EvieePy Jan 4, 2025
1bdb2ac
Add important statement
EvieePy Jan 4, 2025
3583383
Use padding shorthand
EvieePy Jan 4, 2025
a64ae90
Add padding to each individual selector
EvieePy Jan 4, 2025
879d326
Document HTTPAsyncIterator
EvieePy Jan 4, 2025
eced984
Remove todos
EvieePy Jan 4, 2025
fe8d5be
Document add/remove listener
EvieePy Jan 4, 2025
5c43de2
Change inline code styles. Add rule to headings 1 and 2.
EvieePy Jan 4, 2025
4cc2cf2
Fix function dd indentation.
EvieePy Jan 4, 2025
a75f655
Add deco prefix to signatures
EvieePy Jan 4, 2025
81a5d0d
Add start of changelog linking to migrating
EvieePy Jan 4, 2025
aa69d9d
Add migrating ref
EvieePy Jan 4, 2025
90b10db
Add previous changelog
EvieePy Jan 4, 2025
f3e2e7d
Correct changelog
EvieePy Jan 4, 2025
b05521b
Add padding to exception classes
EvieePy Jan 4, 2025
cf3062f
An should be a
EvieePy Jan 4, 2025
779682d
Just apply the margins to all .py > dd selectors.
EvieePy Jan 4, 2025
d242ec0
Fix HTTPAsyncIterator example
EvieePy Jan 4, 2025
2430340
Minimal docs make file
EvieePy Jan 4, 2025
22693bb
Change workflows
EvieePy Jan 4, 2025
7d87823
Remove requirements flag in workflow
EvieePy Jan 4, 2025
b62f03a
Install requirements via .txt when coverage and linting.
EvieePy Jan 4, 2025
933cccf
Replace exceptions with HTTPExceptions
EvieePy Jan 4, 2025
6281ba4
correct ruff rules for later versions
AbstractUmbra Jan 4, 2025
390e52a
add dependabot for handling gh action version updates
AbstractUmbra Jan 4, 2025
b71983d
consolidate yaml file extension
AbstractUmbra Jan 4, 2025
39e56fa
update actions and modernize
AbstractUmbra Jan 4, 2025
4857e75
add formatting check step
AbstractUmbra Jan 4, 2025
69b2490
correct mishandled command entry
AbstractUmbra Jan 4, 2025
74c95c9
Add eq dunder to User
EvieePy Jan 5, 2025
ebaa1c2
Add Video and Stream eq
EvieePy Jan 5, 2025
d7e9e3b
Ensure the user passes a valid combination of client_id/client_secret…
EvieePy Jan 7, 2025
374e1b7
Add not about cast to str in http headers.
EvieePy Jan 7, 2025
52fe1a2
Add some more verbose debug logging
EvieePy Jan 7, 2025
64e98c3
Add user:edit:broadcast scope
EvieePy Jan 9, 2025
6dfebb7
Add detail for eventsub deletion docstring
chillymosh Jan 10, 2025
bfff39e
Ruff
chillymosh Jan 10, 2025
b06aa3f
Rework class generation for eventsub and additional data
chillymosh Jan 10, 2025
e03c44d
Add author alias
EvieePy Jan 17, 2025
798da66
Fix error message in Client
EvieePy Jan 20, 2025
d5413e9
Add source_broadcaster
EvieePy Jan 25, 2025
45851ec
Ignore shared messages when invoking commands
EvieePy Jan 25, 2025
8e9e7dd
Run ruff
EvieePy Jan 25, 2025
19bbd81
Change eventsub timestamp to return optional
chillymosh Jan 25, 2025
4e9340d
Add Chatter helper methods
chillymosh Jan 25, 2025
31fbd6a
Add events to events.pyi
EvieePy Jan 26, 2025
5971022
Start documenting eventsub events
EvieePy Jan 26, 2025
da34047
Add es-docs ext link to docs.
EvieePy Jan 26, 2025
823fa0f
Merge branch 'dev/3.0' of http://github.com/PythonistaGuild/TwitchIO …
EvieePy Jan 26, 2025
9e5af82
Run ruff
EvieePy Jan 26, 2025
0eefdfa
Add sphinx configuration to readthedocs.yml
EvieePy Jan 26, 2025
e023ae2
Do the previous commit correctly
EvieePy Jan 26, 2025
77be568
Remove monospace font from right hand sidebar.
EvieePy Jan 26, 2025
5bcf07f
Remove more font from child sidebar toc
EvieePy Jan 26, 2025
c4f3e80
Further font removal
EvieePy Jan 26, 2025
e29aad9
Remove .condition from Right-Hand toc on es subs
EvieePy Jan 26, 2025
a53d0ac
Bold versionmodified admonition
EvieePy Jan 26, 2025
e2a9d2c
Add a FAQ
EvieePy Jan 26, 2025
95cdfd5
Add the start of the migration guide
EvieePy Jan 26, 2025
e5376eb
Add warning to migration guide
EvieePy Jan 26, 2025
00b0a52
Fix broken ref
EvieePy Jan 26, 2025
778513c
Add warning under Migrating header
EvieePy Jan 26, 2025
e04beff
Add more transparency to admonitions
EvieePy Jan 26, 2025
7ab6acb
Codeblock CSS changes
EvieePy Jan 27, 2025
5d97781
Darken light mode links
EvieePy Jan 27, 2025
fb44b77
Async Iterator migrating
EvieePy Jan 27, 2025
3f7e906
Add events and wait_for migrating
EvieePy Jan 27, 2025
eda9d4e
Add some exception docs.
EvieePy Jan 27, 2025
f4e8540
Add exception hierarchy
EvieePy Jan 27, 2025
218baa3
Run ruff
EvieePy Jan 27, 2025
360af35
Add create_partialuser change
EvieePy Jan 27, 2025
03ebf64
Add search modal background color
EvieePy Jan 27, 2025
eb94bd6
Update installing instructions
EvieePy Jan 27, 2025
63c98d4
Replace random m with comma.
EvieePy Jan 27, 2025
e80b066
Update readme
EvieePy Jan 27, 2025
070b4aa
Add Pyright and License badges.
EvieePy Jan 27, 2025
5cf2eeb
Update README.md
EvieePy Jan 27, 2025
0514c6e
Fix pyright badge
EvieePy Jan 27, 2025
413bcf6
Merge branch 'dev/3.0' of http://github.com/PythonistaGuild/TwitchIO …
EvieePy Jan 27, 2025
a487804
Add warnings to events reference and index
EvieePy Jan 27, 2025
189115a
Update version
EvieePy Jan 27, 2025
42ed93c
Merge branch 'master' into dev/3.0
EvieePy Jan 27, 2025
870990d
Remove duplicate dependabot config
LostLuma Jan 27, 2025
a5c5187
Run CI on current branch instead of dev/3.0
LostLuma Jan 27, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# These are supported funding model platforms

github: [IAmTomahawkx, chillymosh]
github: [EvieePy, chillymosh]

File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
strategy:
fail-fast: false
matrix:
python-version: ["3.7", "3.10", "3.11"]
python-version: ["3.11", "3.x"]

steps:
- name: Checkout
Expand All @@ -28,10 +28,10 @@ jobs:
- name: Install deps
run: |
pip install -U wheel setuptools pip Cython
pip install '.[speed,sound]'
pip install '.[starlette]'

- name: Build wheels
run: pip wheel -w ./wheelhouse/ '.[speed,sound]'
run: pip wheel -w ./wheelhouse/ '.[starlette]'

- uses: actions/upload-artifact@v4
with:
Expand Down Expand Up @@ -62,40 +62,55 @@ jobs:
- name: Install CPython
uses: actions/setup-python@v5
with:
python-version: 3.7
python-version: 3.11

- name: Install Deps
run: |
sudo apt update
sudo apt install -y libasound-dev portaudio19-dev libportaudio2 libportaudiocpp0
python -m ensurepip
pip install -r docs/requirements.txt
pip install -r requirements.txt

pip install -U '.[starlette,docs]'
- name: Build Docs
run: |
cd docs
make html

lint:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.11", "3.x"]

name: "Type Coverage and Linting @ ${{ matrix.python-version }}"
steps:
- name: checkout
- name: "Checkout Repository"
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Setup Python
- name: "Setup Python @ ${{ matrix.python-version }}"
id: setup-python
uses: actions/setup-python@v5
with:
python-version: 3.7
python-version: "${{ matrix.python-version }}"
cache: "pip"

- name: install black
- name: "Install Python deps @ ${{ matrix.python-version }}"
run: |
python -m ensurepip
pip install black
pip install -Ur requirements.txt starlette uvicorn

- name: "Run Pyright @ ${{ matrix.python-version }}"
uses: jakebailey/pyright-action@v2
with:
annotate: ${{ matrix.python-version != '3.x' }}
warnings: false

- name: Lint with Ruff
uses: astral-sh/ruff-action@v3

- name: run linter
- name: Check formatting with Ruff
run: |
black twitchio --line-length 120 --verbose --check
ruff format --check

upload_pypi:
if: github.event_name == 'push' && github.ref_type == 'tag'
Expand Down
15 changes: 0 additions & 15 deletions .github/workflows/issues.yml

This file was deleted.

File renamed without changes.
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -220,3 +220,8 @@ $RECYCLE.BIN/
### Casual test files
testing.py
testing/
test*.py

# So we don't accidentally commit tokens while testing...
.tio.tokens.json
TOKENS.py
19 changes: 7 additions & 12 deletions .readthedocs.yml
Original file line number Diff line number Diff line change
@@ -1,18 +1,12 @@
formats: []

version: 2

build:
os: ubuntu-20.04
tools: {"python": "3.7"}
sphinx:
configuration: docs/conf.py

apt_packages:
- libasound-dev
- portaudio19-dev
- libportaudio2
- libportaudiocpp0
- ffmpeg
- python3-pyaudio
build:
os: ubuntu-22.04
tools:
python: "3.12"

python:
install:
Expand All @@ -21,3 +15,4 @@ python:
path: .
extra_requirements:
- docs
- starlette
41 changes: 41 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
> [!IMPORTANT]
> Version **3** is currently a BETA release.


![](https://raw.githubusercontent.com/TwitchIO/TwitchIO/master/logo.png)
[![](https://img.shields.io/badge/Python-3.11%20%7C%203.12%20%7C%203.13-blue.svg)](https://www.python.org)
![Pyright Strict](https://img.shields.io/badge/Pyright-Strict-b8dbb4)
![GitHub License](https://img.shields.io/github/license/PythonistaGuild/twitchio)


### TwitchIO is a powerful, asynchronous Python library for [twitch.tv](https://twitch.tv).

TwitchIO aims to be intuitive and easy to use, using modern async Python and following strict typing with stateful objects and plug-and-play extensions.

TwitchIO is more than a simple wrapper, providing ease of use when accessing the Twitch API with powerful extensions to help create and manage applications and Twitch Chat Bots.

**Features:**

- Modern ``async`` Python using ``asyncio``
- Fully annotated and complies with the ``pyright`` strict type-checker
- Intuitive with ease of use, using modern object orientated design
- Feature full including extensions for ``chat bots``, running ``routine tasks`` and ``playing sounds`` on stream (Conduits support soon...)
- Easily manage ``OAuth Tokens`` and data
- Built-in ``EventSub`` support via both ``Webhook`` and ``Websockets``

### Documentation
[Documentation](https://twitchio.dev/)

Getting Started
--------------------------------
[Installing](https://twitchio.dev/en/getting-started/installing.html)

[Quickstart](https://twitchio.dev/en/getting-started/quickstart.html)

[Examples](/examples)

### Support
For support using TwitchIO, please join the official [support server](https://discord.gg/RAKc3HF) on [Discord](https://discord.com/)

[![Discord Banner](https://discordapp.com/api/guilds/490948346773635102/widget.png?style=banner2)](https://discord.gg/RAKc3HF)

121 changes: 0 additions & 121 deletions README.rst

This file was deleted.

2 changes: 1 addition & 1 deletion docs/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,4 @@ help:
# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
Loading
Loading