Code Monkey home page Code Monkey logo
Bokusu photo

bokusu Goto Github PK

repos: 5.0 gists: 0.0

Name: Bokusu

Type: Organization

Bio: Backup and manage your media list from multiple tracking sites!

Location: Indonesia

Bokusu

Easily backups your media lists from 15 sites and counting with async compability in mind.

Warning

This project is not available to install yet, as it is still in development. You can help by contributing to the project so that it can be released sooner.

Supported Sites

Important

The following sites has been thoroughly tested and supported from previous project, animeManga-autoBackup. The following sites are guaranteed to be implemented and supported in the future.

>
AniList Anime-Planet Annict Bangumi Kaize
AniList
๐Ÿฅ๐Ÿ“” / ๐Ÿ”โŒ›
Anime-Planet
๐Ÿฅ๐Ÿ“” / ๐Ÿ‘ฅ๐Ÿ“ธ
Annict
๐Ÿฅ / ๐Ÿ”๐Ÿ“ธโŒ›๐ŸŒ
Bangumi
๐Ÿฅ๐Ÿ“”๐ŸŽฎ๐Ÿ“บ / ๐Ÿ”๐Ÿ“ธ๐ŸŒ
Kaize
๐Ÿฅ๐Ÿ“” / ๐Ÿ‘ฅ๐Ÿ“ธ๐Ÿงผ
Kitsu MangaDex MangaUpdates MyAnimeList notify.moe
Kitsu
๐Ÿฅ๐Ÿ“” / ๐Ÿ”๐Ÿ“ธ
MangaDex
๐Ÿ“” / ๐Ÿ”
MangaUpdates
๐Ÿ“” / ๐Ÿ”๐Ÿ“ธ
MyAnimeList
๐Ÿฅ๐Ÿ“” / ๐Ÿ‘ฅ๐Ÿ”๐Ÿ“ธ
Notify
๐Ÿฅ / ๐Ÿ‘ฅ๐Ÿ“ธ
Otak Otaku Shikimori Simkl Trakt VNDB
Otak Otaku
๐Ÿฅ / ๐Ÿ‘ฅ๐Ÿ“ธ๐ŸŒ
Shikimori
๐Ÿฅ๐Ÿ“” / ๐Ÿ”๐Ÿ“ธ๐ŸŒ
SIMKL
๐Ÿฅ๐Ÿ“บ๐ŸŽฌ / ๐Ÿ”๐Ÿ“ธ
Trakt
๐Ÿ“บ๐ŸŽฌ / ๐Ÿ”๐Ÿ“ธโŒ›
VNDB
๐ŸŽฎ / ๐Ÿ”๐Ÿ“ธ

Supported with Caveats

Note

The following sites are supported, but with some caveats. Please read the notes for each site to understand the limitations.

For now, there are no sites that are supported with caveats, yay!

Legends

Supported Media Types
๐ŸฅAnime ๐Ÿ“”Manga ๐ŸŽฎGames
๐Ÿ“บTV Show ๐ŸŽฌMovie ๐Ÿ“–Book
๐ŸŽตMusic
Site Information
๐Ÿ”Requires login ๐Ÿ‘ฅList/entry must public ๐ŸŒRegionalized sites
๐Ÿ“ธWayback Machine support โŒ›Exports history log ๐ŸงผNo Explicit Content
๐Ÿ“จHave caveats ๐ŸƒRequires bypassing security screening/captcha

Planned for The Integrations

Note

The following sites are planned to be integrated in the future, but not guaranteed to be implemented due some known issues or limitations.

  • aniDB โ€” ๐Ÿฅ / ๐Ÿ”๐Ÿ“จ
    Due to limited UDP API commands, bokusu will only be able to send an export request and read your mail to check if the export is ready. You need to manually download the export file from the mail every 2 weeks.
  • aniSearch โ€” ๐Ÿฅ๐Ÿ“”๐Ÿ“บ๐ŸŽฌ / ๐Ÿ‘ฅ๐ŸŒ๐Ÿƒ
  • Doujinshi.info โ€” ๐Ÿ“” / ๐Ÿ”๐Ÿ“ธ
  • Goodreads โ€” ๐Ÿ“– / ๐Ÿ‘ฅโŒ›๐Ÿ“ธ
  • IMDb โ€” ๐Ÿ“บ๐ŸŽฌ / ๐Ÿ‘ฅ๐Ÿ“ธ๐Ÿƒ
  • Kinopoisk โ€” ๐Ÿ“บ๐ŸŽฌ / ๐Ÿ‘ฅ๐ŸŒ๐Ÿ“ธ
  • Kinorium โ€” ๐Ÿ“บ๐ŸŽฌ / ๐Ÿ‘ฅ๐ŸŒ๐Ÿ“ธ
  • Kurozora (former Aozora) โ€” ๐Ÿฅ๐Ÿ“”๐ŸŽฎ / ๐Ÿ”๐Ÿ“ธ
  • Last.fm โ€” ๐ŸŽต / ๐Ÿ”โŒ›๐Ÿ“ธ
  • ListenBrainz โ€” ๐ŸŽต / ๐Ÿ”โŒ›๐Ÿ“ธ
  • LiveChart.me โ€” ๐Ÿฅ / ๐Ÿ”๐Ÿƒ
  • MyDramaList โ€” ๐Ÿ“บ๐ŸŽฌ / ๐Ÿ‘ฅ๐Ÿ“ธ
  • MyShows โ€” ๐Ÿ“บ๐ŸŽฌ / ๐Ÿ‘ฅ๐ŸŒ๐Ÿ“ธ
  • Nautiljon โ€” ๐Ÿฅ๐Ÿ“”๐Ÿ“บ๐ŸŽฌ / ๐Ÿ‘ฅ๐ŸŒ๐Ÿ“ธ๐Ÿƒ
  • RAWG โ€” ๐ŸŽฎ / ๐Ÿ‘ฅ
  • The Movie Database โ€” ๐Ÿ“บ๐ŸŽฌ / ๐Ÿ“ธ
  • WakuWaku โ€” ๐Ÿฅ / ๐Ÿ‘ฅ๐Ÿ“ธ

If you want to see a site that is not listed here, please open an issue and we'll see what we can do.

Export File Interoperability

Bokusu offers multiple export file formats to choose from, so you can choose the one that is most suitable for your use case. In most cases, you only need MAL-flavored XML format so you can import it to other sites that support importing from MAL.

Site XML MALXML JSON RYMSF YAML1 CSV Plain Text Reimportable2
AniList โœ… โœ… โœ… โœ…3 MALXML, JSON4
Anime-Planet โœ… โœ… โœ… MALXML
Annict โญ•5 โœ… โญ•5 โœ…3
Bangumi โœ… โœ…
Kaize โœ…6 โœ… โœ… MALXML
Kitsu โœ… โœ… โœ… MALXML
MangaDex โœ… โœ… โœ…
MangaUpdates โœ…
MyAnimeList โœ… โœ… โœ… MALXML
Notify โœ… โœ… โœ… โœ… โœ… MALXML7
Otak Otaku โœ… โœ… โœ… MALXML
Shikimori โœ… โœ… โœ… MALXML, JSON
SIMKL โœ… โœ… โœ… MALXML7, JSON, CSV
Trakt โœ… โœ…3
VNDB โœ… โœ…

Requirements and Installations

Before you can use Bokusu, you need to install the following:

  • Python 3.10 or higher, recommended to install 3.11 instead as it is the only version that is fully tested and supported.

We also recommend installing the following for better experience:

  • pipx for installing Bokusu without polluting your system and easily upgrade or uninstall it.
  • Keyring daemon/service/agent available in your system, such as gnome-keyring (or related keyring daemon for your desktop environment) for Linux, or Windows Credential Manager for Windows. Required IF you want to use Bokusu locally, otherwise you can use Bokusu in a CI/CD environment (such as GitHub Actions) and provide the secrets as environment variables. This is required to store your Keepass kdbx password and does not want to pass Password via program args.

After installing the above, you can install Bokusu by running the following command:

pip install bokusu

Note

  • Replace pip with pipx if you mainly use pipx to install executables.
  • Depending on your system, you may need to use pip3 instead of pip.
  • If pip is reported as not found, add python3 -m (or python -m in some systems) before pip in the command above.

Important

If during installation you may encounter an error related to building the dependencies, you may need to install the following packages first:

Setup and Configuration

To use Bokusu, you need to configure it first. You can do so by running the following command:

bokusu setup

This will ask you to enter your credentials for each site you want to backup, and create a configuration file for you. The configuration file will be stored in your user directory (~/.bokusu), and will be used by bokusu to authenticate you when you run the backup command.

Follow the instructions on the screen to complete the setup, or visit the wiki for more information.

If you want to change your credentials, you can run following command:

bokusu accounts --edit
# If you're geeky enough, you can use following command instead to launch via
# Keepass
bokusu accounts --edit-keepass

Or, if you want to change your configuration, you can run the following command:

bokusu config --edit

Usage

Bokusu is a command-line tool, so you need to run it in a terminal.

You can also call the program using box as an alias for bokusu if you want to save some keystrokes... but it's not recommended if you have Box (that one cloud storage service) CLI app installed in your system.

Basic Usage

bokusu
# or, if you explicitly set an alias for bokusu
box
# or
python -m bokusu

This will show you the help message and the available commands.

License

Bokusu is licensed under GPL Affero v3.0 or later (AGPL-3.0+) due to heavy dependency of AnimeAPI API for remapping IDs across sites.

We recommend you to use the program as-is and not integrating it to your other open source project/suite, since it will force your project to be licensed under AGPL-3.0+ as well unless the project is copylefted under GPL-3.0+ or compatible GPL licenses.

We are not a lawyer, so please consult your lawyer to make sure you are not violating the license.

Footnotes

  1. Ryuuganime Media Save File format is experimental standardized schema format for media list backup. While it is not supported by any sites yet, it does help Bokusu to be able to convert between different formats. โ†ฉ

  2. The site allows you to reimport the exported file back to the site. โ†ฉ

  3. Only user records will be exported as plain text for logging. โ†ฉ โ†ฉ2 โ†ฉ3

  4. AniList does not support reimporting JSON file natively, use Automail userscript to assist. โ†ฉ

  5. Due to massive infrastructure differences between Annict with their "record" system and MyAnimeList/RYSMF simple tracking system, some data may be lost during the conversion process. โ†ฉ โ†ฉ2

  6. Only Anime will be exported as MALXML due to Kaize and AnimeAPI API limitations. โ†ฉ

  7. To import from MALXML, you need to have either MyAnimeList, Kitsu, or AniList account connected to your account. Import XML file to one of those sites, then do a sync to target site. โ†ฉ โ†ฉ2

Bokusu's Projects

anomalish icon anomalish

An One-way MyAnimeList -> Shikimori List Updater. Dropped in favor of nattadasu/miirakuru

bokusu icon bokusu

Customizable Python app to backup your media (anime, manga, game, tv, movie, book, music) list from multiple sites

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.