/mangadb-api

Discover, organize, and analyze manga data like never before.

Primary LanguagePHPGNU Lesser General Public License v3.0LGPL-3.0

badge badge badge

MangaDB API

MangaDB API is a powerful RESTful API designed to provide comprehensive data and metadata about manga volumes, series, staff, and publishers. With MangaDB API, you can collect and curate manga-related data, making it easier to build powerful applications and services for manga enthusiasts.

Documentation

You can find the API docs here.

Installation

Prerequisites

Before proceeding with the installation, ensure that you have Docker installed in your system. You can install the latest version of Docker by following the instructions given in the official Docker documentation.

Setup

To set up the project, follow the steps below:

  1. Clone the repository.
$ git clone https://github.com/g3ru1a/mangadb-api
  1. Install the composer dependencies using the following command in your terminal:
$ docker run --rm \
-u "$(id -u):$(id -g)" \
-v $(pwd):/var/www/html \
-w /var/www/html \
laravelsail/php81-composer:latest \
composer install --ignore-platform-reqs
  1. Copy .env.example to .env.
$ cp .env.example .env
  • Generate the app key:
$ php artisan key:generate
  • Or within docker:
$ docker exec -d <container_name> php artisan key:generate
  1. Set the WWWGROUP and WWWUSER to your user ID, if it's not 1000, in the .env file.
WWWGROUP=1000
WWWUSER=1000
  1. Set the database name, user, and password you want in the .env file.
DB_DATABASE=laravel
DB_USERNAME=sail
DB_PASSWORD=password
  1. Add your S3 information in the .env file.
AWS_ACCESS_KEY_ID=<your-access-key>
AWS_SECRET_ACCESS_KEY=<your-secret-access-key>
AWS_DEFAULT_REGION=<your-region>
AWS_BUCKET=<your-bucket>
  1. Add your Mailer information in the .env file.
MAIL_MAILER=smtp
MAIL_HOST=sandbox.smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=<username>
MAIL_PASSWORD=<password>
MAIL_ENCRYPTION=tls
  1. Set your image_cdn URL in the .env file.
IMAGE_CDN_URL="https://cdn.yourwebsite.com/"
  1. Run Sail using the following command:
$ ./vendor/bin/sail up

Run migrations using the following command:

$ php artisan migrate:fresh

If you want to run migrations using Docker, use the following command:

$ docker exec -d <container_name> php artisan migrate:fresh

Troubleshooting

Below is a list of common issues:

Contributing

When contributing to this repository, please first discuss the change you wish to make via github discussions, before making a change.

Please note we have a code of conduct, please follow it in all your interactions with the project.

Code of Conduct

In order to ensure that the MangaDB community is welcoming to all, please review and abide by the Code of Conduct.

Security Vulnerabilities

If you discover a security vulnerability within MangaDB, please DM Gerula on Twitter @g3ru1a or on Discord. All security vulnerabilities will be promptly addressed.

License

The MangaDB is open-sourced software licensed under the LGPL-3.0.