Retrospring is shutting down on 1st March, 2025 Read more

[REDACTED] · 7mo

Songbird here! 👋 Just stopping by to say hi, and that I hope you're doing well.

But while I'm here, I haven't touched my site in ages and was thinking about doing a booru kind of set up for my art gallery. Would you happen to know where to start with that? 😅

hello songbird! this is going to be a pretty long answer:

so the actual booru software itself is open source (you can check it out here) but it is written in ruby on rails which i have no experience with. that said, i am currently building an art archive in astro javascript, which is a static site generator (ssg) designed to quickly develop and manage content heavy sites like blogs. my archive essentially functions like LJ/DW, where you have preview cards for each entry that direct to a page dedicated to that entry, and a tagging system to pull up all entries using that tag. the code looks, feels and writes like html/css with bits of js sprinkled in, and being somewhat aware of your skill set i think it would be much easier to build something that has the functionality you are looking for specifically using astro and style it after boorus if you so desire than actually forking danbooru.

NOW, ALL OF THIS SAID -- i am using content collections which requires typescript. typescript is a form of javascript that forces you to declare the object's type before using it, which is exhausting and frustrating but teaches you a lot and saves a ton of time with troubleshooting. ultimately i really can't speak to the limits of astro without using ts because i started learning astro using ts, but despite the learning curve i highly recommend it. do some research as to whether or not you think ts would be necessary for your needs and plan accordingly. you can always switch while you are working on it but expect a lot of type errors really, really fast.

(i want to add that moving into a new language can be daunting but the most important trait a coder can have is tenacity! it's okay if you feel overwhelmed or defeated but remember, you can do anything a computer can do. make it happen.)

(also i can't do it now but if you or anyone else is interested in seeing archive progress pics, you can check the media tab of my bluesky account or just tell me you want to see them here and i'll start posting them.)

tl;dr: you might be able to get what you are looking for from danbooru using astro js so i would start your research there. i started with coding in public's astro blog tutorial but his entire channel is a gold mine for astro related coding. astro's docs are also incredibly accessible and will walk you through pretty much everything you need to know step by step.

best of luck!

Retrospring uses Markdown for formatting

*italic text* for italic text

**bold text** for bold text

[link](https://example.com) for link