tygrdotdev / katarogu

⛩️ A free, open-source and community driven manga and anime tracking service.
https://katarogu.moe
4 stars 0 forks source link
anime manga mongodb nextjs s3 vercel

banner

What is Katarogu?

Katarogu is a free, open-source and community driven manga and anime tracking service built as an open and modern alternative to existing services like MAL and MyAniList.

[!WARNING]
Katarogu is currently in alpha stages of development, breaking changes, bugs and missing features are to be expected.

[!NOTE] This is a complete rewrite from the original version of Katarogu which depended on PocketBase. You can find the original's source under the old branch. Once Katarogu reaches beta stages, this branch will be deleted.

Tech stack

Running locally

Database

Katarogu offers a docker-compose.yaml file which provides a starting point for setting up some required services.
Make sure you have Docker and the compose plugin installed on your system.

Since MongoDB is schemaless, you do not need to run any migrations on the database. Just make sure that the database is running and that Katarogu can connect to it.

Mail

Since Katarogu handles authentication using Lucia, a mail server is required to send verification codes, notifications, etc.
Update the SMTP values inside the .env file to setup mail.

I personally use a service called Plunk.

TLDR; any SMTP server should work fine, just update the .env values.

S3

When hosting Katarogu, you can either store assets (such as avatars, banners, etc) in an S3 bucket, or directly inside the Mongo Database.
To enable storing assets inside an S3 bucket, add the following properties to your environment variables:

# This will tell Katarogu to use S3 instead of MongoDB.
USE_S3=true
S3_ENDPOINT=127.0.0.1
S3_PORT=9000
S3_SECURE=false
S3_ACCESS_KEY=katarogu
S3_SECRET_KEY=VerySecurePassword

Contact

If you need to contact me, please send inquires via email: hi at tygr dot dev.