A tool for building and maintaining anime databases by aggregating data from MyAnimeList, AniDB, TVDB, and TMDB.
go install github.com/varoOP/shinkrodb/cmd/shinkrodb@latestOr download from releases.
Create $HOME/.config/shinkrodb/config.toml or use --config flag. See config.toml.example for reference.
Required:
mal_client_id- MyAnimeList API Client ID (orSHINKRODB_MAL_CLIENT_ID)tmdb_api_key- TMDB API Key (orSHINKRODB_TMDB_API_KEY)
Optional:
discord_webhook_url- Discord webhook for notifications (orSHINKRODB_DISCORD_WEBHOOK_URL)anidb_mode/tmdb_mode- Fetch modes:default,missing,all, orskip
# Run full database update
shinkrodb run [--anidb=<mode>] [--tmdb=<mode>] [--root-path=<path>]
# Migrate old HTML cache to SQLite
shinkrodb migrate
# Format mapping files
shinkrodb format [--root-path=<path>]
# Generate mapping files
shinkrodb genmap [--root-path=<path>]
# Show version
shinkrodb versionmalid.json- MAL IDs with titles and release datesmalid-anidbid.json- Adds AniDB IDs (scraped from MAL)malid-anidbid-tvdbid.json- Adds TVDB IDs (from anime-lists)malid-anidbid-tvdbid-tmdbid.json- Adds TMDB IDs (from anime-lists + TMDB API)for-shinkro.json- Optimized for shinkro (duplicates removed)
- Caching: SQLite cache for efficient re-runs
- Configurable Fetching: Control which entries are scraped/fetched
- Notifications: Discord webhook support for run completion
- Statistics: Comprehensive coverage reports
- TVDB IDs: Provided by Anime-Lists/anime-lists
- TMDB IDs: Sourced from Anime-Lists/anime-lists and the TMDB API