this post was submitted on 02 May 2024
64 points (92.1% liked)

Open Source

31224 readers
324 users here now

All about open source! Feel free to ask questions, and share news, and interesting stuff!

Useful Links

Rules

Related Communities

Community icon from opensource.org, but we are not affiliated with them.

founded 5 years ago
MODERATORS
 

Hello Lemmings.

I will be attempting to make a federated anime tracker this summer, but I am not quite sure what features people would want and how I would get the details for animes, mangas, etc.

For the latter: What I thought was to either scrape other anime websites continuosly in the background, but this most likely is against the ToS of every anime tracking website, such as AniList or MAL. (I actually asked anidb.net for special access to their DB because apparently you can request access to it, but I've been left on read by the two staff members) My second idea was to make it an anime tracker website where animes are only user-submitted. And the user submissions would be approved by assigned moderators. However, I think this would be quite inconvenient. I'd like to get your opinions and/or ideas for this.

For the former: So if you have any requests or suggestions, please drop it down in the comments section.

Thanks in advance.

you are viewing a single comment's thread
view the rest of the comments
[–] muhyb@programming.dev 3 points 6 months ago (1 children)

Didn't know about Jikan API. After a quick look at their docs, I think it should be a steady source for scraping.

For features, can be done a lot with ActivityPub. Of course the most wanted features would be a watchlist / episode tracker (and possibly an importing from the lists people already have, I switched to Kitsu from MAL that way) but just thinking about federating the all anime/manga titles with basically their own communities out of the box sounds great. Good luck with the project!

[–] Asudox@lemmy.world 3 points 6 months ago* (last edited 6 months ago) (1 children)

Yeah, though I am not sure how the federated instance admins would react. I am planning for every anime, manga, vn, etc. to have their own communities. This means about over 100k communities being made in an instant. Maybe instead of creating the communities in an instant, creating them when user activity first happens would be more fit. But this would also restrict other platforms' users being able to comment on never heard or new anime entries until someone from the anime tracking platform comments or reviews them.

Thanks btw.

[–] muhyb@programming.dev 1 points 6 months ago (1 children)

Both have ups and downs. Assuming these lists will be in the code, do you have an estimation how big would that be? If you think they won't strangle the code, just go with it. Something like storing them in JSON and loading them when needed could be better for optimization though.

You can also do some best of both worlds, like not creating the communities beforehand but make the titles searchable from the database open for all users. That might require a bigger traffic from hosting side though, but it should be OK since these will be spread to all self hosted communities.

I think you can also ask some of your questions to selfhosted communities.

[–] Asudox@lemmy.world 1 points 6 months ago (1 children)

What do you mean by "lists in the code"? Which lists and do you mean by "in the code" hardcoded?

[–] muhyb@programming.dev 2 points 6 months ago (1 children)

Well, since 100k titles would make a pretty big database, at least storing the metadata like years, seasons, genres etc as hardcoded could make it run faster than going full-fledged JSON, at least I meant that. However this will be an open source project and there will be localizations, so now it doesn't look like a good idea to me somehow.

[–] Asudox@lemmy.world 2 points 6 months ago (1 children)

What? What do you mean full-fledged JSON. I won't be storing the animes in JSON, but in a PostgreSQL DB. I don't understand what you mean...

[–] muhyb@programming.dev 2 points 6 months ago (1 children)

Sorry for the confusion. Don't take my words literally, I'm not an expert on databases. I use JSON for my job and it's enough for me, so use what database your project needs. But by full-fledged I meant completely leaning on databases which may slow some things down for the server side. However I now checked PostgreSQL and it seems much better for large datasets, so I don't think that would be a concern for you.

[–] Asudox@lemmy.world 2 points 6 months ago (1 children)

Oh, I see. Ok, I get it now. JSON indeed would be very slow for this project. I also do think of maybe caching some stuff for this reason.

[–] muhyb@programming.dev 2 points 6 months ago (1 children)

Yeah, that would be nice for the running seasons I guess. Maybe even a couple years worth seasons since most of the traffic will come from those.

[–] Asudox@lemmy.world 2 points 6 months ago

Yep, that's what I was thinking.