AniMatch

AniMatch

12 devlogs
20h 28m
•  Ship certified
Created by Etash J

Dating site-esque anime/manga reccomandation system that uses the AniList/AniGraph API and should be able to add to your AniList list.

Submitted to reactive (after first created).

Timeline

Ship 1

1 payout of shell 290.0 shells

Etash J

about 1 month ago

Etash J Covers 12 devlogs and 20h 28m

Removed the undo button and did some additonal testing. Ready to ship!

Update attachment

After trying several workarounds. the best solution is to detect the 429 and wait for ~20s so the API can continue. Added a loading message for this exact scenario. A little bit hank, but this is a complete minimum viable product. Will be shipping today!!
Deployed to prod at https://ani-match.netlify.app/

Update attachment

The backend works fully (in theory)!! The project is basically done, probably only 1 or 2 more dev logs left.
The issue that arises now is that the AniList API gives 30 request per minute (it's under maintenance, but only 60 during regular service) and also returns invalid IDs quite often. What happens is the invalid IDs need to be checked (so requests are made) but they can be made too fast and now there's a rate limit or 429 error. Apollo Client has no way to easily distinguish between the two or to read the headers for the duration of the limit. So if you try the site (https://ani-match.netlify.app), and you swipe between things too fast, then the entire queue clears out and saves to local storage and makes the app unusable. Currently have a workaround of local storage, but you might be able to see the rather funny visual of the cards zooming past.

Lots of fun working on this project :)

Update attachment

Added two extra pages (about and issue reporting) so that I fulfill the requirement for the reactive ysws. Domain name incoming??

Update attachment

Been a while since(4 hours :0) since the last devlog. Since then I took a break and then started grinding. The main UI is finished and what's really left is the logic to run the whole site. Right now the only part that works is settings and the swipe interface, but it's limited to the 3 sampler cards. Please (PLEASE) check it out at https://ani-match.netlify.app) and lmk if you find any bugs. Attached a screenshot of the UI.

Unfortunately it's kind of cramped on smaller mobile devices. I have to add keyboard control support (arrow keys to swipe, cmd-z to undo) and add undo support.

//TODO: Undo, keyboard support, queueing for reccoendations, signing in with analyst.

Update attachment

The cards now swipe!! I haven't pushed it to prod yet though...

Update attachment

I'm so lost how do you make swipe interface

Update attachment

Deployed @ https://ani-match.netlify.app/
Does not work fully yet, but the first build works. Finished up design of header and related tools. Moving on to card/swiping design soon.

Update attachment

Added toggles for mature and echo content. Settings pane is complete for now. Going to add a toggle for Manga and Anime and then attempt to deploy on netlify? Maybe make the sign in with anilist button functional.
Bulk of the work will be creating the card swipe interface.
Also made readme

Update attachment

Finished theme logic and dropdown in settings menu. Colors are pretty much chosen out now. Saved to localStorage
Next: Add a toggle between anime and manga (similar dropdown logic hopefully)

Update attachment

Getting a feel for tailwind. Classes are way nicer to use then css. Added animations and styles for buttons and modals. Also understanding how react states and component Memory are much more convenient to sue than vanilla js. Typescript will come soon, I haven't fully understood how to leverage strong type checking.

Update attachment

Created my first typescript/react/vite/tailwind site (holy frameworks)

Update attachment
Definitely Not A Dolphin Definitely Not A Dolphin about 2 months ago
Try Svelte once, trust me, it won’t dissapoint