looking over this SQL is writing is making me feel very Powerful
i could change fedibooks to only allow one user per instance and all it would take is a single word
i could cause privacy issues and wasted disk space by just deleting one rule
i could change a single column's data type and break pleroma compatibility
a difficult thing to determine is how high should i set the post length limit
my instance has it set to 65535 to ensure i never run into issues, masto defaults to 500, pleroma defaults to 5000
i guess this is supposed to be a microblogging platform so it doesn't make too much sense to allow them to be overly large, and that does technically expose me to some jerk filling my DB with posts that are gigabytes long
65535 it is
the SQL is (probably) finished and it is beautiful
https://github.com/Lynnesbian/FediBooks/blob/master/setup.sql
according to this arbitrary chart i'm about halfway done for fedibooks' first release
it's been a while i last updated this thread, because it's also been a while since i did any major work on fedibooks. i've kinda pushed myself way too hard on it and i'm taking it more slowly now.
that said, i do have some new features to show off! firstly, fedibooks is now capable of scraping user posts. this is one of the key steps towards implementing full ebooks functionality. the first screenshot shows that fedibooks has successfully scraped all 63 of this account's posts.
secondly, there's now a nifty little bug report form for those of us without github accounts, shown in the second screenshot.
there are a few minor features left now, and one major feature - replying. once that's done, fedibooks will be complete.
unfortunately, testing the reply functionality requires me to actually deploy fedibooks to a website, since i can't test it with localhost. this means it's going to be a bit of a hassle to implement.
however, i've looked at what needs to be done for reply functionality, and it seems pretty easy with web push - mastodon will automatically send a request to fedibooks with some info, which fedibooks can then reply to. it should be pretty simple 0u0
i want to implement reply functionality and bot settings, and then i'll release the first version of fedibooks for all to use!
i'm really excited for this. this is the first time i've ever actually managed to finish a major project! i often start things that are way too ambitious and never manage to finish them, but this time i did it!!
i'm about to start testing the reply functionality for fedibooks 0u0
fedibooks is now live, by the way! i've disabled signups for now, but in the mean time, you can explore the site: https://fedibooks.com/
well i've run into a bit of an issue...
the bot creation process works on my small laptop and pet's laptop, but not on my big laptop. i have no idea why, it's the same code and everything, and my small laptop has the same firefox addons as the big one. i'm reading over the code and i really don't see how this bug works... and why does it only happen on one laptop??
okay i found the issue
this specific install of firefox wants the favicon.ico, and when it can't find it, it requests fedibooks' home page
because your browser is requesting the home page, fedibooks assumes you've finished creating the bot, and resets your progress counter thingy to 1.
this breaks multi-step forms.
okay!! fedibooks is now live and in what you might call early access.
i don't know how well it's going to hold up, because i haven't been able to do much serious testing on it, but i guess we'll all find out together!!
for those who've been following along with this thread, i'm sure you've seen that it's been quite a ride!
once the mstdn-ebooks import functionality is done, i'll be shutting down my paid hosting service after a week. this means i'm cutting off the income source i mainly use to pay for the server.
if you'd like to donate, you can do so here:
https://patreon.com/Lynnesbian
https://paypal.com/Lynnesbian
https://ko-fi.com/Lynnesbian
there are currently no donor benefits, although patreon pledgers (to any tier) will get early access to my lynne teaches tech posts.
thanks for considering!
@lynnesbian congratulations! What a fantastic service
@lynnesbian Congrats!!! 👏🏻👏🏻👏🏻
@lynnesbian coming sune
@lynnesbian hmm
I might actually sign up for a fedibooks bot...
can't wait!
what's self hosting going to be like compared to e-books? easier? harder? about the same?
@mal it's gonna be a lot easier! you won't need to download or install everything, the whole thing is done through the website. everything from replies to post frequency can be set without editing config files or anything like that. it'll be hosted on my server, so you don't need to keep your laptop running 24/7
oh ok, I misunderstood, I though since you were discontinuing the patreon thing that fedibooks was a self hosted thing, gotcha, this is cool though! I'm really glad it sounds to be nearly ready for prime time!
@lynnesbian can you just.... give it a favicon.ico?
@00dani @lynnesbian favicon.png should also work
@lynnesbian if you haven’t found out yet, the Right Way to solve this is to make your forms POST and check for POST requests - this is essentially why different methods exist (GET requests should in theory never change server side state)
@halcy it is a post form, but the progress is tracked by a cookie
@lynnesbian good luck with the fix, whatever you end up doing!
@lynnesbian http get shouldn’t have side effects. find some ofher way to advance the counter
@lynnesbian that is, if you’ve got a multistep process, it should only advance with a form post. that’s application state change, and having that anywhere near GET always causes problems similar to yours because pretty much all software assumes GET is safe to do and won’t change application state.
@lynnesbian this story is a classic:
https://thedailywtf.com/articles/The_Spider_of_Doom
@espectalll should be fixed!
@lynnesbian it is, thanks!
@lynnesbian my wife is goddamn incredible
@skelltan it should work fine, emal isn't implemented yet
@skelltan it should work fine, yeah
@LynnearSoftware Yunohost implementation would be rad. I see it's on your radar.
Pleroma support is fixed, and it's now possible to create bots on Pleroma instances.
As Pleroma does not currently support fine-grained app permissions, FediBooks will require full read and write access to your account. You may look through the source code to verify that these permissions are not used maliciously.
@LynnearSoftware I have no idea what Yunohost is, but Docker is the subject of a bunch of internal Inedo projects right now
@lynnesbian bunxiety
@lynnesbian huh! you're using the webpush code, that's neat! If you notice any problems with it or way the docs can be improved, please let me know - don't think it's seen much use so far so it's probably Not Great
@lynnesbian (esp. if you notice that like push subs stop working for some reason because I've been like, wondering what happens if the url stops working for a while or whatever, does it clear the subscription, &c)
@lynnesbian 👍🏼
@lynnesbian Looks nice but remove Google Fonts and FontAwesome.com,please.People here care about their privacy and these fonts are all free to host on your own server.
@nipos it occurs to me that it might be useful to put up a page listing the most common third-party domains websites depend on, and how to make sites work independently of them. Domains controlled by prominent #datafarms like Goggle would be high priority to include.
@lynnesbian
this is the screen that appears when you try to do something i haven't made yet