Unofficial Twitch API for Dart and Flutter.
NOTE: This is not an official Google or Dart project.
Simply add twitch
to your pubspec.yaml
file:
dependencies:
twitch: ^0.3.0
You'll need a Twitch API token (called a "client ID") for this to be useful. Visit the twitch developer site to signup - it just takes a minute or two.
WARNING: The default implementation only works in the command-line VM and
Flutter, and may not be loaded in the browser at all in Dart versions older
than 1.23.0
. Starting at 1.23.0
it's trivial to implement a browser version
of TwitchHttp
, but this has not been yet. Consider contributing!
This API is incomplete, and currently supports a high-level Twitch
class
(with a strongly-typed idiomatic Dart API) and a lower-level TwitchHttp
class
that allows making any call to the Twitch API server, provided you know the
URL endpoints (see the API documentation).
For example, how to get the top played games on Twitch:
import 'dart:async';
import 'package:twitch/twitch.dart';
/// With a pre-authorized client ID, prints the top games on Twitch.
///
/// Assumes the environment variable `TWITCH_CLIENT_ID` to be set.
main() async {
var http = new TwitchHttp.fromEnv();
var twitch = new Twitch(http);
// Calls and decodes GET https://api.twitch.tv/kraken/games/top
final result = await twitch.getTopGames();
print('The top game on Twitch is currently: ${result.first.name}');
http.close();
}
We welcome a diverse set of contributions, including, but not limited to:
- Filing bugs and feature requests
- Send a pull request
- Or, create something awesome using this API and share with us and others!
For the stability of the API and existing users, consider opening an issue first before implementing a large new feature or breaking an API. For smaller changes (like documentation, bug fixes), just send a pull request.