Edit: @redyoshi49q@furry.engineer has designed a better solution using only CSS, and this should be used instead of the old script! If you’re reading this page for the first time, ignore this message.
This userstyle adds a red heart next to people that are from your home server, and any other servers that you manually define. Spot your server buddies out in the wild!
Instructions:
-
Install Stylus extension for firefox/chrome
-
“Write new style” in the addon settings
-
Copy paste the CSS code below in
-
Modify the code around line ~11 in order to reflect your homeserver and any additional frendservers that you want to highlight
-
Modify the code around line ~19 to reflect your homeserver
-
(Optional) If you’d like your homeserver buddies to have a different marker, uncomment the various sections around line ~27 through ~50 by removing the /* and */ bits
-
(Optional) Play around with different markers and colors!
CSS/Userstyle: https://gist.github.com/redyoshi49q/f1b2d1da0a8f7536aba1f8c3110d2dd8
pawb.social is refederated again, so all goes back to normal for now :) pay no mind to this comment and enjoy your stay.
original comment
Importantpawb.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.
Defederation is unintuitive and seriously distributive - there now exists multiple versions of this post with different set of comments and votes depending on who is looking from where. My comments from sopuli.xyz to this post on sh.itjust.works are being send to pawb.social as sopuli and pawb are federated (or because pawb hasn’t defederated on their side?) , but anything happening on pawb.social is not being updated to sh.itjust.works.
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