this post was submitted on 14 Jun 2023
14 points (93.8% liked)
Lemmy Plugins and Userscripts
2175 readers
1 users here now
A general repository for user scripts and plugins used to enhance the Lemmy browsing experience.
Post (or cross-post) your favorite Lemmy enhancements here!
General posting suggestions:
- Preface the submission with the type of enhancement - ex: [UserScript].
- Include a screenshot of the enhancement in use (where possible)
- Indicate the requirements for use (eg, greasemonkey, stylus, etc.)
Thanks!
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
pawb.social is refederated again, so all goes back to normal for now :) pay no mind to this comment and enjoy your stay.
::: spoiler original comment
~~Important~~
~~pawb.social, the instance OP is from, was sadly defederated from sh.itjust.works. This means they cannot edit this post or respond to your comments.~~
~~This is the link where it is currently being maintained: https://pawb.social/post/43513~~
~~## Author's message on his Greasyfork extension:~~
~~(In this case, SJW means shit.just.works)~~
Thank you for posting this! As luck would have it, we literally just re-federated to SJW after a discussion: https://pawb.social/post/69478
Here's hoping that defederation remains a nuclear option, because this was a bit of a confusing experience.
Edit: Also (if we were still defederated) I actually can reply to comments from other instance's users on this post (I did so here while we were defederated). SJW users will not see my comments, but they will get distributed properly to members of other instances. I wouldn't be able to reply to SJW posts if we were still defederated though.
ah, nice to know! :) Thanks, and I'm super glad to have you back. I've actually been using your script (version 1.3) as a basis for another plugin I'm making. I'm not sure it'll see the light of day but it's fun, and it's my first attempt at a firefox extension.
Very cool! I'm not a web developer by trade so don't take anything I wrote as good design, but the mutation observer + disconnect/reconnect paradigm seems like a good way to generically interact with lemmy. I tried to monitor for normal DOM/etc events and couldn't find any that happened when lemmy moved stuff around, so this is the only way I could find.
:) ChatGPT had actually given me the observer syntax, I used it for the first plugin on the community 😎😎 ChatGPT made most of it too hahah. It's simple enough.
I am actually a professional web developer. But that doesn't mean I'm amazing at it, though I do know a few... practices, not sure if I should call them "best practices" or even "good design" hahahah, I just do what it takes.
I switched the whole thing to typescript though which tends to produce better results for complex things. Typechecking at compile time saves a shitton of debugging time. For the rest of things like the addon folder structure, dependencies and anything else, I just ask ChatGPT. It is now my universal encyclopedia! 🥸 (encyclopedia, assistant, codemonkey, proofreader, second brain for when mine turns off and also my new source of type errors cuz its common sense is sometimes nonexistent)
Strongly typed languages are definitely my jam. Develop slightly slower, debug 2x less, faster runtime. What's not to like. Kudos for actually being a web developer - it makes my head hurt. Case in point: me writing all this complicated JS when the problem was cleanly solvable with attribute selectors in CSS. I'm technically fullstack but I mostly stay backend and application-level if I can help it. Web dev has too many options for how to accomplish something, and I never know what the proper answer is. I'm interested to see what general paradigm people will use to interact with lemmy - I feel there has to be a more efficient way than mutation observer. Lemmy's HTML markup could stand to be more verbose as well - extra classes to hook onto for more precise manipulation.
You're correct. comments between other instances still propagate successfully but direct interaction is not allowed. Pawb.social did just overturn its defederation of SJW, so we're back to normal for the meantime. I'm glad to have seen this happen early on though, it's good to know about the effects of this type of situation, and what that means for the future
Another interesting consequence is that deletions don't propagate either. sopuli.xyz and sh.itjust.works both agree it's deleted, pawb doesn't so you were able to reply to it. Not that it really matters in this case as the reason was not being sure which way the defederation was actually done, but it's something to keep in mind when posting stuff here, just like the email comparison people have been using about the fediverse, once you hit send it's out of your control.
Yeah I'm not sure if there's like a "refederation queue" that is taking place to sync everything up asynchronously since we literally just hit the redeferate button half an hour ago, but my OP on this page was not the correctly synchronized version either. I had to click edit and resubmit it, which pushed a proper update event.
Events that took place during the defederation period are still a bit wacky. One of my replies from the defederation period did get synced to SJW by itself, but my own personal upvote of the post did not (showed 0 points). After un-upvoting and upvoting again, it properly showed 1 point on SJW