API client for Kitsu.io, with optional Anime collection, and optional Anilist syncing.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Timothy Warren b80f5a5316 Merge pull request 'All in GraphQL' (#34) from develop into master 1 year ago
app Fix updating anime status when certain fields are empty 1 year ago
build Bump version 1 year ago
frontEndSrc Use GraphQL search endpoints, see #33 1 year ago
migrations Collection updates for 'all' tab 2 years ago
public Use GraphQL search endpoints, see #33 1 year ago
src Revert status mapping change 1 year ago
tests Fix broken test 1 year ago
.editorconfig Some progress toward better structure through refactoring 6 years ago
.gitignore Simplify caching 2 years ago
.htaccess Update htaccess so images can load 5 years ago
.travis.yml Update dependencies to latest versions 2 years ago
CHANGELOG.md More cleanup, update changelog 1 year ago
Jenkinsfile Update dependencies to latest versions 2 years ago
LICENSE Add license 5 years ago
README.md Add more types 2 years ago
RoboFile.php Run local phpunit from robo 1 year ago
composer.json Update dependency versions, add Amp base package as dependency 1 year ago
console Create component system to help cut down on view duplication, see #31 1 year ago
index.php Bump version 1 year ago
phinx.yml.dist Add migration to create a link table between anime_sets and media 2 years ago
phpdoc.dist.xml Fix some documentation generation issues 4 years ago
phpdox.xml Cleanup some build/quality check stuff 2 years ago
phpstan.neon More refactoring/cleanup 2 years ago
phpunit.xml Really ugly progress commit 5 years ago
sw.js Fix generic user page route, minor code cleanup 3 years ago


Hummingbird Anime Client

Update your anime/manga list on Kitsu.io and Anilist

Build Status Build Status

[Hosted Example]


  • Anime List views (Each with list and cover views):

    • Watching
    • Plan to Watch
    • On Hold
    • Dropped
    • Completed
    • Combined View
  • Manga List views (Each with list and cover views):

    • Reading
    • Plan to Read
    • On Hold
    • Dropped
    • Completed
    • Combined View
  • Anime collection view (segmented by media type):

    • Cover Images
    • Table List


  • PHP 7.4+
  • PDO SQLite or PDO PostgreSQL (For collection tab)
  • GD extension for caching images
  • Redis or Memcached for caching


  1. Install via git, then install dependencies via composer: composer install
  2. Duplicate app/config/config.toml.example file as app/config/config.toml
  3. Configure settings in app/config/config.toml to your liking
  4. Create the following directories if they don't exist, and make sure they are world writable
    • app/config
    • app/logs
    • public/images/avatars
    • public/images/anime
    • public/images/characters
    • public/images/manga
  5. Make sure the console script is executable
  6. Additional settings are on the settings page once you log in.

Server Setup

See the wiki for more in-depth information