API client for Kitsu.io, with optional Anime collection, and optional Anilist syncing.
Go to file
2016-04-06 12:11:07 -04:00
app Start of caching implementation 2016-04-05 13:19:35 -04:00
build Update header comments, add start of manga editing functionality 2016-01-04 16:58:33 -05:00
migrations Start of caching implementation 2016-04-05 13:19:35 -04:00
public Fix issue with cover not being hidden on last episode 2016-03-29 11:30:51 -04:00
src/Aviat Add some naive cache invalidation to update methods 2016-04-06 12:11:07 -04:00
tests Update url generation to use new router 2016-03-07 14:37:49 -05:00
.editorconfig Some progress toward better structure through refactoring 2015-09-14 10:54:50 -04:00
.gitignore Update url generation to use new router 2016-03-07 14:37:49 -05:00
.htaccess Add basic htaccess file for apache 2016-02-05 14:14:02 -05:00
.travis.yml Add proper table sorting and add some security headers 2016-01-20 13:01:41 -05:00
build.xml Make build.xml file more phing friendly 2016-02-03 21:24:10 -05:00
composer.json Start integration of PSR 7 Request/Response 2016-02-16 16:28:44 -05:00
index.php Start of migration from php to toml config, see #11 2016-02-10 17:30:45 -05:00
phinx.yml Update information on anime collection, and remove sqlite file, which can be created by a database migration 2015-06-16 15:54:10 -04:00
phpdoc.dist.xml Miscellaneous updates, prep for menu generator 2015-10-05 16:54:25 -04:00
README.md Update README 2016-02-09 21:42:56 -05:00
sonar-project.properties Fix http verb for update route, add correct http codes for http errors 2016-01-07 20:48:18 -05:00

Hummingbird Anime Client

A self-hosted client that allows custom formatting of data from the hummingbird api

Build Status Build Status Scrutinizer Code Quality

[Hosted Example]

Features

  • 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

Requirements

  • PHP 5.5+
  • PDO SQLite (For collection tab)
  • GD

Installation

  1. Install via composer: composer create-project timw4mail/hummingbird-anime-client
  2. Configure settings in app/config/config.php to your liking
  3. Create the following directories if they don't exist, and make sure they are world writable
    • app/cache
    • public/js/cache
    • public/images/manga
    • public/images/anime

Server Setup

nginx

Basic nginx setup

server {
	location / {
		try_files $uri $uri/ /index.php$uri?$args;
	}

	location ~ ^(.+\.php)($|/) {
		fastcgi_split_path_info ^(.+\.php)(.*)$;
		fastcgi_index index.php;
	}

	location ^~ /vendor {
		deny all;
	}
}

Apache

Make sure to have mod_rewrite and AllowOverride All enabled in order to take advantage of the included .htaccess file. If you don't wish to use an .htaccess file, include the contents of the .htaccess file in your Apache configuration.

Anime Collection Additional Installation

  • Run php /vendor/bin/phinx migrate -e development to create the database tables
  • For importing anime:
    1. Login
    2. Use the form to select your media
    3. Save & Repeat as needed
  • For bulk importing anime:
    1. Find the anime you are looking for on the hummingbird search api page: https://hummingbird.me/api/v1/search/anime?query=
    2. Create an import.json file in the root of the app, with an array of objects from the search page that you want to import
    3. Go to the anime collection tab, and the import will be run