m5l.eu is a Fediverse instance that uses the ActivityPub protocol. In other words, users at this host can communicate with people that use software like Mastodon, Pleroma, Friendica, etc. all around the world.
This server runs the snac software and there is no automatic sign-up process.
Hi everyone, I'm Stefano
Also known as the BSD Cafe and illumos Cafe barista - @stefano@bsd.cafe and @stefano@illumos.cafe
This is the first post from littleOne (littleone.littlefedi.social), the first littleFedi instance open to outside users.
littleFedi is a new ActivityPub server, still in active development, written in Go and shipped as a single binary. It speaks standard ActivityPub, so it federates normally with Mastodon, snac, GoToSocial, Akkoma and the rest of the fediverse, and it exposes a Mastodon-compatible API, so most existing apps already work with it.
A few things about it that aren't the usual fediverse defaults:
Catch-up instead of an algorithm. Timelines stay chronological, full stop. There's a separate /catchup page, visited on demand, that ranks what you missed using only signals this instance already has locally - who you follow boosted it, replies and favourites delivered here, hashtags you follow. No external popularity data comes in, nothing about what you read is tracked. It answers "what did I miss" without turning into a feed that decides for you.
Static blogging built in. Any post can be marked as a blog post and gets published as a plain static page under /@username/blog/, with its own permalink, Atom feed, and no JavaScript or database hit per view, while still being a normal federated post underneath. A proper home for longer writing that doesn't need to compete with a timeline.
Self-expiring posts. Any post can be given a timer and auto-delete on its own.
Bubble timeline. A middle ground between local and federated: a timeline scoped to a set of instances you've chosen to group together, not just your own or everything.
littleMesh. A way to federate without a public domain, certificate, or open port at all - meant for something like a Raspberry Pi behind NAT. Instances get an address derived from an Ed25519 key pair and reach each other through pinned relays that never see plaintext.
No trends, no suggestions. These are intentionally left empty. Nothing here is trying to surface "popular" content or keep anyone scrolling longer.
Security defaults taken seriously. Signed federation (HTTP Signatures), optional Object Integrity Proofs, TOTP MFA, audit logs, and full account export, migration and deletion if you ever want your data to live somewhere else.
This instance is here to test all of that with real accounts, not just a small group ones'. In the next few days I'll be reaching out to everyone who already told me they were interested, to set the first accounts up - an invite is coming. If you'd rather just follow along and see how it goes, that works too.
It's a test instance, so expect the occasional rough edge. If something breaks or feels wrong, tell me - that's exactly what this phase is for.
Re: Are we becoming too paranoid about AI slop?
My reply to @82mhz's post about #AI slops.
#Blaugust #100DaysToOffline #blogging #blog #fediverse #AIslops
https://lazybea.rs/re-are-we-becoming-too-paranoid-about-ai-slop
Calling all testers: littleFedi test instance coming soon
I will be launching a test instance of littleFedi soon.
If you would like a test account, reply to this post and I will reach out as soon as it is ready.
The goal is to test the platform with a larger group of users and gather initial feedback.
littleMesh addendum: readable handles and replaceable relays
Yesterday's post left one thing unsolved. Your littleMesh identity is your Ed25519 public key, which is great for security and terrible for a handle: nobody wants to type @alice@a1b2c3...52-characters....mesh.littlefedi.social, let alone read it out loud. And the lighthouse we mentioned, the relay that introduces you to the world, was baked into that identity too. Change relay, and you'd look like a different node.
We've been studying how to fix both, and we think we see a path.
The idea is a small signed directory sitting next to the mesh itself. You'd reserve a friendly alias, something like red-house.mesh.littlefedi.social, and your node would publish a signed record binding that alias to your node ID and to up to three lighthouses. Signed with the same mesh key you already have, no new identity, no new PKI. The record would carry a sequence number and an expiry, so nobody, not even the directory operator, could roll it back to an older version or serve a stale one past its time.
What we like about it is what it wouldn't change. Your handle would stay @alice@red-house.mesh.littlefedi.social, readable. Underneath, WebFinger would still resolve to your real actor ID, the one built from your node ID, exactly as today. And switching lighthouses, would just mean publishing an updated signed record. Same handle. Same actor ID. Nobody following you would notice anything happened.
The directory itself would stay deliberately weak in what it's trusted with. It couldn't produce a valid record for your node ID without your key, and every connection would still authenticate the node ID end to end, so even a malicious or compromised directory could deny service but never impersonate you.
We're building this over the next few days, opt-in, as an experiment. Once it's up, we want to see it survive a real follow exchange with stock Mastodon, snac and GoToSocial, and a lighthouse swap that doesn't touch the handle, before deciding whether it earns a permanent place in littleMesh or gets reworked. Worth trying, not yet worth trusting.
Good morning, #BSDCafe
Good morning, #illumosCafe
Good morning, #Fediverse
Have a great #SeaWednesday !
RE: https://rpi0w.stefanomarinelli.it/@stefano/6e542287-1d97-49a1-8b3d-1801854aa8a4
Honestly, I’m really excited about this!
#littleFedi #littleMesh #Fediverse #OwnYourData
littleFedi introducing littleMesh
We've been buried in littleFedi work lately, and there's one piece I want to talk about because it's the one I'm genuinely excited about: littleMesh.
The problem is an old one. Federation assumes you have a domain, a public IP, an open port, a TLS certificate. Fine if you're renting a VPS somewhere. Not fine if your instance lives on a Raspberry Pi in your house, behind CGNAT, with an ISP that will never hand you a real IP address no matter how nicely you ask. Until now, that simply meant no federation for you. Full stop.
littleMesh gets rid of that requirement entirely, without asking you to build any of the infrastructure above.
On first run, your instance generates its own Ed25519 keypair. That key becomes your identity, no domain required, because your instance's address is derived straight from your public key, in the form .mesh.. Then your node opens an outbound connection to a "lighthouse", a small, publicly reachable relay, and registers itself there. Since the connection is outbound, it works from behind any NAT, any CGNAT, with zero port forwarding. The ISP never even notices.
When someone wants to reach you, they ask the lighthouse to open a circuit. The lighthouse introduces both sides, you call back, and it splices the connection together, but it only ever sees encrypted bytes, never your actual traffic.
Once the introduction is made, if you happen to have a reachable address after all, both sides skip the relay and talk directly. If not, the relay just keeps carrying you, quietly, in the background.And if you already run an instance with a real domain, you can still turn on littleMesh, purely to reach mesh-only instances. Your own identity doesn't change at all.
There will be a default pair of community lighthouses, so you don't even need to find or run your own relay to get started, just say yes during littleFedi init and you're on the mesh.
The fediverse shouldn't require you to be reachable. It should reach you.
littleFedi introducing littleMesh
We've been buried in littleFedi work lately, and there's one piece I want to talk about because it's the one I'm genuinely excited about: littleMesh.
The problem is an old one. Federation assumes you have a domain, a public IP, an open port, a TLS certificate. Fine if you're renting a VPS somewhere. Not fine if your instance lives on a Raspberry Pi in your house, behind CGNAT, with an ISP that will never hand you a real IP address no matter how nicely you ask. Until now, that simply meant no federation for you. Full stop.
littleMesh gets rid of that requirement entirely, without asking you to build any of the infrastructure above.
On first run, your instance generates its own Ed25519 keypair. That key becomes your identity, no domain required, because your instance's address is derived straight from your public key, in the form .mesh.. Then your node opens an outbound connection to a "lighthouse", a small, publicly reachable relay, and registers itself there. Since the connection is outbound, it works from behind any NAT, any CGNAT, with zero port forwarding. The ISP never even notices.
When someone wants to reach you, they ask the lighthouse to open a circuit. The lighthouse introduces both sides, you call back, and it splices the connection together, but it only ever sees encrypted bytes, never your actual traffic.
Once the introduction is made, if you happen to have a reachable address after all, both sides skip the relay and talk directly. If not, the relay just keeps carrying you, quietly, in the background.
And if you already run an instance with a real domain, you can still turn on littleMesh, purely to reach mesh-only instances. Your own identity doesn't change at all.
There will be a default pair of community lighthouses, so you don't even need to find or run your own relay to get started, just say yes during littleFedi init and you're on the mesh.
The fediverse shouldn't require you to be reachable. It should reach you.
Thinking about a new domain+project...
Anyone have the TL;DR; on self hosted fediverse software?
Mastodon vs Snac vs Pleroma vs ?
I'm looking for something that is super low maintenance and lightweight / easy on resources but as full featured as practical within those constraints.
Something easy to tune re: post lengths and media types would be cool too. A "text first" platform is desired.
I've run Mastodon in the past and it's like fishing with nukes for this use case.
What's out there?
The Blog Option in littleFedi
...and yes, this is build and served by the Raspberry Pi Zero W, powered by NetBSD
https://rpi0w.stefanomarinelli.it/@stefano/blog/691cb62e-e7a1-434b-ba65-d059ee58ac41/
The Blog Option in littleFedi
littleFedi, like many social platforms, had both a strength and a limit. Posts, by their nature, are ephemeral. They get published, federated (unless local-only, which littleFedi handles) and then, over time, lost. Partly through self-deletion, partly through their normal blending in with the thousands of other posts that pile up over time. Sometimes, though, we want something to stay. And not just stay as a social post, but as an actual blog. A bit like with BSSG, I had thought it would be convenient to have a minimal system. Not to compete with WordPress or other solutions, but to have a small blog, integrated into littleFedi, that would produce and serve a blog updated every now and then, whenever the person writing felt like doing it.
And that's why the blog option was born.
The idea is simple: when you write a post, from the web UI or from the CLI, there's a checkbox, "blog post". If you check it, that post stops being just a status that will scroll past and disappear. littleFedi renders it into a real static site. No JavaScript, just HTML and CSS, an Atom feed, tag pages, a chronological archive. Nothing exotic, nothing that needs maintenance five years from now.
The blog isn't a parallel system you have to feed separately. It's not an export, not an import, not a bridge to some other CMS. The post you wrote is the blog post. Same database, same act of writing, still boostable, still repliable, still part of the conversation on the fediverse side. The blog is just a second representation of the same content, generated automatically. Every time you create, edit, or delete a blog post, the whole static site for your account gets rebuilt from scratch, and the new version replaces the old one atomically, so nobody ever lands on a half-built page. If the build fails, the previous version stays in place. Simple, but it has to work reliably, or the whole idea is pointless.
That's the core of it: two representations of the same post. As a status, it lives in the fediverse, interactive, part of the conversation, subject to replies and boosts like anything else. As a static page, it lives on the web, durable, indexable, with a permalink, something an RSS reader can hold onto. You don't have to decide in advance which posts deserve to last. You write normally, and if something turns out to be worth keeping, you flag it, and it gets its own page.
One detail I cared about while thinking this through: the generated site has to be self-contained. When littleFedi builds it, media gets copied or hard-linked into the generated directory - images, audio, video. If it's stored on S3, it keeps its public URL directly. Either way, the point is that the site on disk doesn't depend on the instance staying up. If the server goes down tomorrow, the blog files are still a complete, working website. That wasn't an afterthought, it was one of the requirements from the start.
Not every account gets a blog, and that's intentional. The instance admin has to enable the feature globally ([blog] enabled = true), and then grant it per account. It's not meant to be a CMS, and I didn't want it to become one. Blog posts can't be replies, can't be boosts, have to be public and top-level. These are constraints, not missing features: the blog is for your own writing, not for threads or reshared content.
There's no JavaScript anywhere in the generated site. That was deliberate too. It loads fast, it works offline if you cache it, and it will still render correctly in ten years without anyone having to update a dependency.
In the end, the blog option doesn't ask you to choose between writing socially and writing something permanent. You keep writing the way you always do, on littleFedi, and if a post is worth keeping, you check a box. No separate platform, no migration, no vendor lock-in. Just your own posts, some of them rendered into a small static site you can host anywhere, built out of something that already existed on the open web.
Remember: all this is being currently served by a Raspberry PI Zero W powered by NetBSD
#littleFedi #SSG #BSSG #OwnYourData #Blogging #Fediverse #NetBSD
Just a friendly reminder that this instance is running on a Raspberry Pi Zero W powered by NetBSD and littleFedi (not yet released)
I was thinking about forking ActivityPub and calling it ActivityCafe.
It will natively only support 'ristretto' connections, and the only allowed emoji is 🤌.
How many instances must an admin spin up
before you can call it a fediverse?
The answer, my friend, is pinging in the wind,
The answer is pinging in the wind.
Today I successfully tested a migration from my 'historic' Akkoma instance to littleFedi, without changing the domain name and without breaking the federation.
The procedure involves extracting the keys, so federated instances will accept this without any issues. In their eyes, there will be no particular differences, and they will gladly digest it without breaking the federation.
I have documented the procedure and kept the tool. I'm probably going to create something similar for Mastodon, though it will be a bit more complex.
Today the rat met the bear
#OverUnder 073 with @ratfactor
He shares his thoughts about #HTML #emails, #Letterboxd, #Zettelkasten, #rats, and, #apple #pies.
His #blog is older than #Google
He also replied to @yannick's question.
And, we got a recommendation for two #books.
#bloggers #bookstodon #book #fediverse #mastodon #food #BSD #Linux
I promised it, so here it is. This is a recording of littleFedi running on a Raspberry Pi Zero W on NetBSD.
Everything is on the SD card, the database is SQLite, and caching is enabled.
Personally, I won't comment on responsiveness or anything else; I'll just say that when I use it (both via the web interface and with apps like MastoBlaster or IceCubes), I find it hard to believe what kind of hardware it's running on.
Users' sessions (by default, a maximum of 8 users but configurable) are kept "warm" with every interaction or federated activity for 15 minutes since the last login; after that, the server enters "low power mode" and simply processes incoming data without activating the (users' timelines, etc.) cache.
We don't need to get ripped off for more powerful hardware, which comes with outrageous costs these days.
We just need to optimize and build efficient software.
Abundance led to waste.
#littleFedi #NetBSD #RunBSD #OwnYourData #Optimize #ScreenCapture #Fediverse
The littleFedi caching system is configurable and adaptable. Caching helps immensely, and for this very reason, you can choose to keep the cache "warm."
By default, if enabled (which makes a lot of sense on slow hardware), the system tracks user activity over the last n minutes (15 by default). For those minutes following the last interaction with the system, the cache will be kept warm.
Does a new post arrive in the timeline? It gets processed and cached, immediately (and partially) re-processing the timeline cache. The user will see it immediately in the timeline.
On a Raspberry Pi Zero W running NetBSD on an SD card, this means dropping the timeline generation time from about 5 seconds down to roughly 0.20 seconds.
After 15 minutes of inactivity from the user, the system will stop keeping the cache warm, reducing the CPU load to nearly zero (provided you aren't doing local processing of remote images, of course - which is also configurable). Upon the user's first visit, it will take a few extra seconds (cold cache), but from that moment on, everything will be almost instantaneous.
There's also a cache for the federation activities (a boost won't cause constant reprocessing of that post), but this isn't that different from other implementations' approach.
I don't know if I'll manage to do the screen recording today or if it will end up being tomorrow, but I'm still amazed at how it runs on the Raspberry Pi Zero W with NetBSD.
Happy Sunday, #BSDCafe
Happy Sunday, #illumosCafe
Happy Sunday, #Fediverse
#SilentSunday #Photography #Photo #Pic #Summer #Italy #Fotografia
The arbitrary limits in #Mastodon are a little infuriating.
And I really want to like Mastodon. It was my first experience on the #fediverse, and I actually like the UI/UX, for the most part.
Hemos añadido nuevas ciudades a la red de FediMeteo en España, mejorando la cobertura del país, incluyendo áreas metropolitanas, capitales de provincia, islas y zonas costeras.
🇪🇸 FediMeteo Spain is growing!
We have added new cities to the FediMeteo network in Spain, improving coverage across the country, including metropolitan areas, provincial capitals, islands and coastal areas.
Ciudades añadidas / Added cities:
@leganes@es.fedimeteo.com
@san_sebastian@es.fedimeteo.com
@marbella@es.fedimeteo.com
@torrejon_de_ardoz@es.fedimeteo.com
@dos_hermanas@es.fedimeteo.com
@parla@es.fedimeteo.com
@mataro@es.fedimeteo.com
@algeciras@es.fedimeteo.com
@santa_coloma_de_gramenet@es.fedimeteo.com
@alcobendas@es.fedimeteo.com
@reus@es.fedimeteo.com
@roquetas_de_mar@es.fedimeteo.com
@girona@es.fedimeteo.com
@telde@es.fedimeteo.com
@rivas_vaciamadrid@es.fedimeteo.com
@barakaldo@es.fedimeteo.com
@torrevieja@es.fedimeteo.com
@las_rozas_de_madrid@es.fedimeteo.com
@lorca@es.fedimeteo.com
@sant_cugat_del_valles@es.fedimeteo.com
@san_sebastian_de_los_reyes@es.fedimeteo.com
@mijas@es.fedimeteo.com
@san_fernando@es.fedimeteo.com
@cornella_de_llobregat@es.fedimeteo.com
@torrent@es.fedimeteo.com
@chiclana_de_la_frontera@es.fedimeteo.com
@el_ejido@es.fedimeteo.com
@el_puerto_de_santa_maria@es.fedimeteo.com
@pozuelo_de_alarcon@es.fedimeteo.com
@arona@es.fedimeteo.com
@velez_malaga@es.fedimeteo.com
@valdemoro@es.fedimeteo.com
@sant_boi_de_llobregat@es.fedimeteo.com
@fuengirola@es.fedimeteo.com
@talavera_de_la_reina@es.fedimeteo.com
@orihuela@es.fedimeteo.com
@pontevedra@es.fedimeteo.com
@gandia@es.fedimeteo.com
@rubi@es.fedimeteo.com
@manresa@es.fedimeteo.com
@coslada@es.fedimeteo.com
@estepona@es.fedimeteo.com
@santa_lucia_de_tirajana@es.fedimeteo.com
@benalmadena@es.fedimeteo.com
@huesca@es.fedimeteo.com
@teruel@es.fedimeteo.com
@palencia@es.fedimeteo.com
@soria@es.fedimeteo.com
@merida@es.fedimeteo.com
@arrecife@es.fedimeteo.com
@puerto_del_rosario@es.fedimeteo.com
@santa_cruz_de_la_palma@es.fedimeteo.com
@san_sebastian_de_la_gomera@es.fedimeteo.com
@valverde@es.fedimeteo.com
@eivissa@es.fedimeteo.com
@mahon@es.fedimeteo.com
@ciutadella@es.fedimeteo.com
@calvia@es.fedimeteo.com
@manacor@es.fedimeteo.com
#FediMeteo #España #Spain #Weather #Meteo #Fediverse #FediMeteoUpdates #FediMeteoAnnouncements
A partir de ahora, España está soportada por los avisos meteorológicos vía Delta Chat.
Progresivamente, la biografía de cada ciudad mostrará el enlace para suscribirse al bot correspondiente, para recibir los avisos directamente en Delta Chat.
🇪🇸 FediMeteo Spain is now also available on Delta Chat.
Spain is now supported by weather alerts via Delta Chat.
Gradually, the bio of each city account will show the link to subscribe to the corresponding bot, so you can receive alerts directly in Delta Chat.
#FediMeteo #España #Spain #DeltaChat #Weather #Meteo #Fediverse #FediMeteoUpdates #FediMeteoAnnouncements
De lokale weersverwachtingen voor Nederlandse steden kunnen nu ook via Delta Chat-kanalen worden gevolgd.
De links naar de kanalen staan in de bio van de bijbehorende stadsaccounts.
De botadressen zullen geleidelijk verschijnen, stap voor stap, maar de kanalen zijn in feite al actief.
Alle beschikbare steden:
https://nl.fedimeteo.com
🇳🇱 FediMeteo Netherlands is now also available via Delta Chat!
Local weather forecasts for Dutch cities can now also be followed through Delta Chat channels.
The channel links are available in the bio of the corresponding city accounts.
The bot addresses will appear progressively, little by little, but the channels are already active.
All available cities:
https://nl.fedimeteo.com
#FediMeteo #DeltaChat #Weer #Weather #Nederland #Netherlands #Fediverse #FediMeteoUpdates #FediMeteoAnnouncements
From now on, weather forecasts for UK cities and towns can also be received through a Delta Chat channel.
The link to each city’s channel is available in the bio of the corresponding city account.
See all available cities and towns at:
https://uk.fedimeteo.com
We have added new cities and towns to improve coverage across the United Kingdom, including England, Scotland, Wales and Northern Ireland.
Each account automatically posts local weather forecasts.
New cities:
@york@uk.fedimeteo.com
@preston@uk.fedimeteo.com
@lincoln@uk.fedimeteo.com
@chester@uk.fedimeteo.com
@durham@uk.fedimeteo.com
@gloucester@uk.fedimeteo.com
@worcester@uk.fedimeteo.com
@winchester@uk.fedimeteo.com
@salisbury@uk.fedimeteo.com
@bath@uk.fedimeteo.com
@doncaster@uk.fedimeteo.com
@southend_on_sea@uk.fedimeteo.com
@st_albans@uk.fedimeteo.com
@perth@uk.fedimeteo.com
@stirling@uk.fedimeteo.com
@dunfermline@uk.fedimeteo.com
@stornoway@uk.fedimeteo.com
@oban@uk.fedimeteo.com
@ullapool@uk.fedimeteo.com
@mallaig@uk.fedimeteo.com
@lisburn@uk.fedimeteo.com
@newry@uk.fedimeteo.com
@enniskillen@uk.fedimeteo.com
@coleraine@uk.fedimeteo.com
@llandudno@uk.fedimeteo.com
@rhyl@uk.fedimeteo.com
@merthyr_tydfil@uk.fedimeteo.com
@brecon@uk.fedimeteo.com
@llanelli@uk.fedimeteo.com
@pontypridd@uk.fedimeteo.com
@huddersfield@uk.fedimeteo.com
@middlesbrough@uk.fedimeteo.com
@stockton_on_tees@uk.fedimeteo.com
@warrington@uk.fedimeteo.com
@wigan@uk.fedimeteo.com
@bolton@uk.fedimeteo.com
@stockport@uk.fedimeteo.com
@oldham@uk.fedimeteo.com
@rochdale@uk.fedimeteo.com
@luton@uk.fedimeteo.com
@slough@uk.fedimeteo.com
@watford@uk.fedimeteo.com
@maidstone@uk.fedimeteo.com
@basingstoke@uk.fedimeteo.com
@guildford@uk.fedimeteo.com
@woking@uk.fedimeteo.com
À partir de maintenant, les prévisions météo des villes françaises peuvent également être reçues sous forme de canal Delta Chat.
Le lien vers le canal de chaque ville se trouve dans la bio du compte correspondant.
Consultez les villes disponibles sur :
🇫🇷 FediMeteo France updates are now also available via Delta Chat!
From now on, weather forecasts for French cities can also be received through a Delta Chat channel.
The link to each city's channel is available in the bio of the corresponding city account.
See the available cities at:
🇫🇷 FediMeteo France is growing!
We have added new cities to improve coverage across France, including Corsica, Mayotte, coastal areas, mountain regions, and overseas territories.
Each account automatically posts local weather forecasts.
Nouvelles villes / New cities:
@ajaccio@fr.fedimeteo.com
@bastia@fr.fedimeteo.com
@mamoudzou@fr.fedimeteo.com
@dzaoudzi@fr.fedimeteo.com
@annecy@fr.fedimeteo.com
@chambery@fr.fedimeteo.com
@gap@fr.fedimeteo.com
@la_rochelle@fr.fedimeteo.com
@saint_nazaire@fr.fedimeteo.com
@vannes@fr.fedimeteo.com
@lorient@fr.fedimeteo.com
@quimper@fr.fedimeteo.com
@la_roche_sur_yon@fr.fedimeteo.com
@bayonne@fr.fedimeteo.com
@tourcoing@fr.fedimeteo.com
@calais@fr.fedimeteo.com
@arras@fr.fedimeteo.com
@beauvais@fr.fedimeteo.com
@valenciennes@fr.fedimeteo.com
@beziers@fr.fedimeteo.com
@antibes@fr.fedimeteo.com
@cannes@fr.fedimeteo.com
@frejus@fr.fedimeteo.com
@arles@fr.fedimeteo.com
@narbonne@fr.fedimeteo.com
@le_tampon@fr.fedimeteo.com
@saint_andre@fr.fedimeteo.com
@saint_louis@fr.fedimeteo.com
@les_abymes@fr.fedimeteo.com
@basse_terre@fr.fedimeteo.com
@baie_mahault@fr.fedimeteo.com
Dear friends of #BSDCafe and the #Fediverse,
some of you have expressed the desire to offer a bit of support to BSD Cafe.
In response, I've set up a Ko-fi page and a LiberaPay account for the project.
You can now buy a coffee for BSD Cafe at this link: https://ko-fi.com/bsdcafe or https://liberapay.com/bsdcafe
#runsnac #snac2 #fediverse #alternatives #opensource
CC: @VasiliWz@hachyderm.io
Thanks @grunfink@comam.es for the #snac server, @stefano@bsd.cafe for the blog posts that pointed me to it, @voron@snac.nya.pub for the theme and @manton@manton.org for motivating me with your book