Twire
Twire copied to clipboard
Discoverability/filtering enhancements
With the outpour of… whatever you'd like to avoid (or focus on) watching for whichever reasons one might have, I have an idea to add these filtering methods in order to facilitate better stream discoverability while channel surfing, applied in all current stream/category listing views outside of Search
(which is fine, but tends to be rather narrowly scoped).
Could probably be implemented without significant alteration to existing views:
- filter by streamer, tracked by
.node.broadcaster.id
(or.node.broadcaster.login
), chosen in both "Featured streams" and "Top streams" views by.node.broadcaster.login
or.node.broadcaster.displayName
- filter by game/category, tracked by
.node.game.id
, chosen in "Top games" view by.node.game.displayName
or more likely,.node.game.name
Would probably require implementing additional views or hiding within Settings
?:
- filter by stream type (
.node.type
, primarily "rerun", but might apply to watch parties and others, as well) - filter by an ANDed set of (possibly presence-negated?) tags (
.node.tags[]
); ORing would be achieved by specifying a new filter rule - filter by viewer count criteria (above/below a number)
.node
implicitly refers to .data.streams.edges[*].node
.
Any filtering by names (game/category name, stream title, streamer name) could also be accompanied by unanchored case-ignoring regex matching, but those tend to require more involved parsing than simple ID/UUID matching, so they're highly optional (on top of being, occasionally catastrophically, error prone).
Summarily, all filters could be either AND-exclusive (the default, prevent from appearing in listing) or OR-inclusive (only matches appear in listing).
Also, when it comes to filtering client-side in the browser, extensive application of ad blocker filters and holding Page Down
tends to trip Twitch's request rate limiting by throwing a vertical orientation CAPTCHA at the user, so keeping it in mind might be a worthwhile consideration.