Twire icon indicating copy to clipboard operation
Twire copied to clipboard

Discoverability/filtering enhancements

Open zer0def opened this issue 3 years ago • 1 comments

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).

zer0def avatar Jul 18 '21 14:07 zer0def

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.

zer0def avatar Jul 18 '21 14:07 zer0def