Kitsumon
Meaning
From Kitsu, the anime discovery platform, and Kitsumon (詰問), which means questioning or asking in Japanese.
If you love Kitsu.io and want a clean, typed way of querying their API for anime, manga, and characters, Kitsumon is made for you!
Installation
Add kitsumon to your pubspec.yaml:
dependencies:
kitsumon: ^0.2.0
Or via terminal:
dart pub add kitsumon
Usage
1. Basic Initialization
import 'package:kitsumon/kitsumon.dart';
void main() async {
// Unauthenticated client
final kitsumon = Kitsumon(kitsu: Kitsu.noAuth());
// Or with credentials (when supported)
// final kitsumon = Kitsumon(kitsu: Kitsu(auth: KitsuAuth(...)));
}
2. Fetching Anime Collections with Filters
import 'package:kitsumon/kitsumon.dart';
void main() async {
final kitsumon = Kitsumon(kitsu: Kitsu.noAuth());
// Fetch anime by text search, season, or category
final result = await kitsumon.media.anime.fetchCollection(
text: 'Cowboy Bebop',
pageLimit: 10,
sort: [Sort.popularityRankAscending],
);
for (final anime in result.data ?? []) {
print('${anime.attributes?.canonicalTitle} (Rating: ${anime.attributes?.averageRating})');
}
}
3. Fetching Anime Characters & Details
import 'package:kitsumon/kitsumon.dart';
void main() async {
final kitsumon = Kitsumon(kitsu: Kitsu.noAuth());
// Fetch anime character details
final characterResponse = await kitsumon.charactersAndPeople.animeCharacters.fetchResource(
11614,
includes: Includes(['anime']),
sparseFieldSets: SparseFieldSets('anime', ['canonicalTitle', 'createdAt']),
);
print('Role: ${characterResponse.data?.attributes?.role}');
}
Building from Source
To regenerate .g.dart serialization code:
sh ./build.sh
Or directly via build_runner:
dart run build_runner build
Features and Bugs
Please file feature requests and bug reports on the GitHub Issue Tracker.
License
This project is licensed under the MIT License.
Libraries
- kitsu
- Kitsu Library. It contains different types you can find using KitsuAPI.
- kitsu_methods
- It contains and group up all the methods.
- kitsumon
- Kitsumon Library.
- kitsumon_exceptions
- Kitsumon Exception Library. It contains some of the exceptions of my library.