FabianRolfMatthiasNoll / MyMangaDB

Application to organize and manage your mangas. It displays all kinds of metadata from a manga without lifting a finger. Say goodbye to your excel lists

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MyMangaDB

MyMangaDB aims to become the quintessential application for manga collectors. Say goodbye to using Excel sheets or makeshift solutions for managing your manga collection. With MyMangaDB, simply input the manga's title and the application will automatically populate your collection with details like the author(s), description, available volumes, cover art, genres, and more without any manual input from your end. Currently only available for english mangas. If someone wants to enhance the manga grabbing process and add german mangas and more feel free to do it :)

πŸ”” Disclaimer

As the development of this project is an endeavor undertaken during my student years, there might be occasional downtimes. But rest assured, I'm committed to building a reliable product and will continue refining it.

And i am happy to announce that Version 1.0.0 is finally released.

πŸ“– About MyMangaDB

  • Framework: FastAPI.
  • Database Management: SQLAlchemy, as recommended by FastAPI, is used for data management. All data is stored in a local SQLite3 database.
  • Data Sources:
    • The primary data, including author details, genres, and descriptions, are sourced from the Jikan API.
    • Plans are in place to integrate more data sources for book covers and other specifics.

Due to the varied nature of manga provider websites, the focus is on building an intuitive user interface. This will allow users to efficiently manage their collection.

βœ… Current Features

  • Automated metadata retrieval (Author, Genres, Total Volumes, Description) // english mangas only currently
  • Efficient manga collection management
  • Support for multiple authors
  • Genre addition and management
  • Flexible manga cover management (manual and automatic)
  • Adding Volumes with covers to the manga
  • Excel list export and import
  • Protected Editing / Viewing Mode for hosting and sharing with friends
  • Out-of-the-Box working Docker setup

πŸš€ Future Features

  • Automated manga cover search
  • Many more switchable attributes including custom notes
  • Adding ISBN to the Mangas
  • Visual analytics for your collection
  • Add and Fetch Mangas from the Web by ISBN
  • multi language meta data fetching

πŸ› οΈ How to Use (WIP)

Release Version

To launch the application, simply open the downloaded release file. This action will prompt a window to appear, signifying that the service is now active. Upon initiation, the app will create a local database on your device. Note that the service will cease operation the moment the window is closed.

The database location varies by operating system:

  • Windows: User/Appdata/manga.db
  • Linux: user/.config/manga.db

Source Code

Setting up the development environment for the first time involves creating a virtual environment. Execute the following command to do so:
python -m venv /path/to/new/virtual/environment

Afterward, navigate to the main directory and run the command below to install all required packages:
pip install -r requirements.txt

Note for RaspberryPi users: use the requirements_rpi.txt. Because PyQt5 is making compatibility issues.

In the frontend directory, you'll need to run: npm install
This is necessary to install all Node modules for the frontend.

To initiate both the backend and frontend, refer to the settings provided in the vscode launch.json.
Please exercise caution in using the application extensively, as future updates may introduce changes to the database schema.

Hosting

For hosting, a Docker compose file is provided. Update the following settings in the file:

API_TOKEN: "YOUR_API_TOKEN_HERE" # Set the API Token twice for frontend-backend communication
API_URL: "http://localhost:8000" # Backend URL, typically the server IP
AUTH_PWD: "mymangadb" # Password for editing mode
DOCKER_MODE: "true" # Changes database location to the mounted volume for persistence

πŸ“Έ Sneak Preview (v1.0.0)

Note: Images below are work-in-progress and might undergo changes.

Dashboard

Dashboard

Manga Overview

Manga Overview

Volume Overview

Volume Overview

Editing Manga

Editing Manga

Manually Adding Mangas

Adding Manga Manually

Searching for Mangas via MAL

MAL Search MAL Search Preview

Current Settings Menu

Exporting/Importing Library

About

Application to organize and manage your mangas. It displays all kinds of metadata from a manga without lifting a finger. Say goodbye to your excel lists

License:GNU General Public License v3.0


Languages

Language:TypeScript 78.6%Language:Python 19.5%Language:Dockerfile 0.5%Language:HTML 0.5%Language:CSS 0.4%Language:JavaScript 0.3%Language:Shell 0.1%