Apologies in advance if I am using the wrong terms or posting the wrong way.
Onto my question, I see that despite being on kbin.social, I see articles for lemmy.world and other platforms on this site. Did the admins of each instance configure this, or does it occur because they are all public and each instance fetches data from everywhere else?
The reason I’m curious is because I’m wondering about building a read-only instance for myself. Hosting an instance of kbin/lemmy/etc comes with a lot of extra functionality (users management, communities, content uploads, etc), along with associated costs (storage, scaling). I imagine having a instance that simply reads other federated instances, caches their posts/comments temporarily, with minimal storage for configuration (subscribed topics/people/etc).
It depends, but most of the time the answer is yes.
If you just host a single user instance for yourself, it doesn’t need to be some massively scalable thing.
By default, instances can connect with any other instance, but admins can block instances. The connection is made when a user on that instance subscribes to a community on a different instance. You can definitely run your own instance and just disable sign-ups.
https://join-lemmy.org/docs/administration/federation_getting_started.html
Thanks for the link, it answers a bunch of my questions
When someone adds a magazine/community to your server via the search features, that’s when they start showing up on your server. If you are the only person on your server, then only the things you subscribe with will show up. You’ll need to search with both the community name and server domain.
Did the admins of each instance configure this, or does it occur because they are all public and each instance fetches data from everywhere else
The softwares can federate with whomever by default, so your second thought was spot on.
The reason I’m curious is because I’m wondering about building a read-only instance for myself.
This is a perfectly valid reason to stand up your own lemmy/kbin server. I’m considering the same thing myself. An instance like you’re describing would certainly need far fewer resources compared to a public instance, just keep in mind that you’ll need to set up and maintain it on your own; not a huge task for a single user, but it’s a task.
And to be a bit more clear on the terminology, you’re considering setting up an instance that has new user signups and new communities disabled, but with federation still enabled, correct? If not, than disregard everything in my last paragraph.
Rather than a kbin/lemmy instance, I’m thinking of a separate codebase altogether.
As I understand, both kbin and lemmy implement the activitypub protocol, similar to how gmail/outlook implement SMTP.
So having an activitypub-compliant app would be sufficient to read the data from kbin/lemmy/etc.
This would be a side project for myself to learn a new language, e.g. golang backend.