These days I have seed and flavorful vegetables on my mind. I'm grateful to be part of an international community with that passion. One of the places on the internet I learn the most these days is a #Discourse #forum dedicated to that topic and I wish it could federate with Mastodon and similar networks, so the conversations could take place here too. Atm you need a 500$ business plan to integrate #ActivityPub plugin.
Search results
With #HolosDiscover we checked multiple criteria before indexing: "indexable" enabled, account not locked, no #nobot or #noindex in bio, not in opted-out list, only public posts. Every deletion, edit or block was processed instantly via #ActivityPub.
Google uses that same "indexable" flag but ignores everything else, keeps deleted content cached for weeks.
We shut it down after pushback. Was that the right call? Don't hesitate to share, this concerns the whole Fediverse.
After shutting down #HolosDiscover, we're rethinking the approach with #HolosIndex: users explicitly opt in by adding #HolosIndex to their bio with interest tags, then submit their profile. No assumptions, no default settings.
This will power interest-based discovery across the #Fediverse, helping people find each other through shared interests. Still all through #ActivityPub of course, with real-time deletions and updates.
are there any fediverse projects using more than one type of federation?
what are some good resources for implementing activitypub validly?
what languages should i learn?
what are good ways to test web application security on the cheap before deployment?
anything more i should be worried about?
i'm good at c, python and that's about it.
#ActivityPub ✅ #jsonld 🤷♀️ Why? 🤪
Hopefully the SocialWG will adopt a real schema language. 🙏
@eyeintheskyThe Eye I am genuinely curious. What do you mean by a "real" schema language? What criteria should it meet?
More specifically, what would constitute successful interoperability for #ActivityPub in line with the aims of #SocialWeb?
#JSONLD is not a schema language. It is used to serialise #ActivityStreams as the primary vocab for exchanging social activities, providing a foundation, and leaves room for extensibility for broad human needs to express social matters.
Never before has it been this easy to leverage the fediverse across the web.
With
@webintents and
@socialwebgraph, you will be unstoppable 🚀
Available Soon.
#WebIntents #SocialWebGraph #Fediverse #ActivityPub #ActivityIntents
Hello World!
We're building a social web alternative to open graph, powered by
@webintents and
@fedidb
The website and documentation will be published soon, stay tuned 🚀
This morning I promoted nolto.social, a platform that was made - at least I thought so, to be a Fediverse based alternative to LinkedIn. As I'm getting more and more annoyed by LinkedIn and all the useless posts over there, I was happy to find an independent alternative.
nolto.social still worked this morning, but when I came back later; i found the project deleted and at least when you are viewing the website from your smartphone, you see a message from the developer of nolto.social where he states that this project was never meant to grow. Obviously this was just a one person project who became overwhelmed by the success of the platform and by the fact, that companies started creating profiles and nearly 1000 people joined within a short time period. But now it seems that this project ran out of control and the maintainer decided to pull the emergency break. He is also talking about negative feedback he received for the platform and even personal harrassment.
It is sad that a promising project like this had been terminated, but I can understand what made the maintainer doing so. Managing a business platform can become a fulltime job quite fast and it also requires technical ressources and money to run these resources.
I firmly believe that we need an alternative to LinkedIn. I believe that people don't want all this bullshit posts just created to please the algorithm and to generate likes and feedback. And I believe that people would like a business network which is nothing else than a business network - no space for bursting egos and self promotion, but a space for connection and serious discussion.
Fediverse would be the ideal space for this. But as we know, if business networks are successful, they require more and more attention, more ressources, more money. And at this is the problem. When you need money to run your social network, it's tempting to ask yourself how you could generate money by using the ressources you already have, which are user data...
I don't see a solution for this now, just sharing some thoughts.
pack-mastodon v0.1.0 is now available on Ramble!
Deploy Mastodon, a self-hosted ActivityPub social network, to HashiCorp Nomad
Nice! I have queued this up for inclusion in the delightful fediverse experience curated list.
https://delightful.coding.social/delightful-fediverse-experience
pack-mastodon v0.1.0 is now available on Ramble!
Deploy Mastodon, a self-hosted ActivityPub social network, to HashiCorp Nomad
One option for events in Fediverse: https://gath.io/
#ActivityPub ✅ #jsonld 🤷♀️ Why? 🤪
Hopefully the SocialWG will adopt a real schema language. 🙏
Hello
@evanEvan Prodromou and
@bifurcationRichard Barnes .. a question.
For inclusion of #ActivityPub information resources on the delightful-fediverse-development curated list there is this (now expired) #IETF draft exploring #MIMI / #MLS versus AP. I find this draft to be well-written and informative, and thus the draft possibly a candidate for inclusion for people as additional background reading to the #SocialCG work on MLS. Unless there are so many changes since the creation of the draft that it may raise confusion, and should not be included. What is your opinion here?
https://ietf-wg-mimi.github.io/mimi-arch/draft-ietf-mimi-arch.html
I would like to suggest that folks in #Canada who appreciate the #fediverse and #activitypub learn about and thank
@dansup, who invented, developed & maintained
@pixelfed for YEARS even while the user base was like in the few hundreds.
Now he's behind
@loops and
@fedidb as well
His dedication to the open web is so criminally underrated in our country, even though he has been on the global cutting edge of the #digitalsovereignty movement we're seeing in #cdnpoli for the better part of a decade.
Connecting the Fediverse to the Metaverse, round two
Jupiter Rowland @jupiter_rowland@hub.netzgemeinde.eu
Communication between the Fediverse and OpenSim is being worked on again; CW: long (over 600 characters), Fediverse meta, Fediverse-beyond-Mastodon meta
Read more →Yay, Spritely Institute (
@spritelyThe Spritely Institute) presents what the future of distributed social networks might look like:
- https://fosdem.org/2026/schedule/event/HVJRNV-how_to_level_up_the_fediverse/
Decentralized social networks of consent.
For more information read https://spritely.institute
#spritely #activitypub #socialMedia #ocapn #distributed #consent #fediverse
@andycarolanAndy Carolan
did it again and now #FedBOX, the generic #ActivityPub server, has a fresh of the press logo. :) Thank you Andy! 🥳
I'm playing around with Offer activities in Fedify. The AP Vocab provides this, easy peasy.
✅ Alice OFFERS Book to Bob
✅ Bob ACCEPTS Alice's OFFER
Or:
✅ Bob OFFERS Rotten Tomato to Alice
❌ Alice REJECTS Bob's OFFER
----------------
But I'm not clear if this is right:
❓Alice ANNOUNCES OFFER of Labubu to Followers?
❓Bob OFFERS $10 for Labubu to Alice?
❓ Alice ACCEPTS Bob's OFFER of $10 for Labubu?
✅ Alice OFFERS Labubu to Bob
✅ Bob ACCEPTS Labubu
@smallcircles🫧 socialcoding..
@jerger I feel like using C2S client and S2S server is a bit more precise than "app" for this thread. At this point, I haven't been able to determine how you define "app".
Yes, I would highly discourage the use of "app". It is why I scare quoted it, but "app" is common language when people talk about the fediverse. "App" is a neat container concept that fits the full scope of ones own FOSS project, but on the fediverse - a growing heterogeneous and interoperable social network - one becomes highly dependent on the foundational network communication layer based on #ActivityPub, and any fedi FOSS developer should be concerned beyond direct project scope, and pay attention that this foundation evolves healthily. This unfortunately happens unsufficiently, and only a very small number of people try to get the ecosystem as a whole to higher levels, volunteering time where it does not directly benefit their own projects. Think
@silverpill for the #FEP and
@evanEvan Prodromou for #SocialCG.
Cool find yesterday was that
@HolosSocial rather than C2S has a "full AP server" client-side, that communicates with a Websockets tunnel to a dedicated relay server.
Keeping msgs immutable is a general best-practice, I gather.
In the case you mention it becomes confusing to still use client/server terminology. You have a full actor on the client's side, and when it sends a msg it acts in server/S2S role.
Btw, in that scenario we do not have to make the distinction client + server anymore, as we have just actors communicating with each other. Then we can think in terms of the actor model, and honor its qualities.
A client sending to the server's outbox is then analogous to an actor sending to another actor's inbox. That is a one-way msg exchange usually, fire and forget (esp. in a pure event-driven architecture... which the current fediverse is not). The remote actor is not responsible for keeping the Activity (event) in its server-outbox / actor.inbox. That corresponds to the spec part "may disappear at any moment".
@smallcircles🫧 socialcoding..
@jerger > In the case you mention it becomes confusing to still use client/server terminology.
In this case, I think the terms makes sense in the specific content of #ActivityPub clients and servers. There's significant overlap in the behaviors of the two, but there are significant differences too. For example, a client cannot federate and often runs in an environment where it can't expose listening sockets (browser, behind a firewall, etc.).
@steveSteve Bate
@jerger
@mariusormarius
Yes, I was about to respond: Or in your own client, I suppose. The client then defines the app. A client video app would pick up and process a PeerTube as:Video activity, but care nothing about PeerTube. The type of the activity, and the properties the client needs to deem it valid for processing are then deciding, I guess. 🤔
@steveSteve Bate
@jerger
@mariusormarius
As an aside: I just learned about Holos-Discover, an AP search engine was taken offline by
@HolosSocial after discussions relating to consent. The key finding was in https://toot.fedilab.app/@apps/116051469228002847
> This highlighted a real conversation the Fediverse needs about default settings.
Yeah. I would reformulate to say that this is about protocol capabilities vs. these weird things we call "apps".
Can't check the Holos-Discover info, as it was taken down, but it seems to me that relying on an "Indexable" setting is an app-specific thing. Hence it can't be part of a generic consent mechanism.
When it comes to "defaults", the fediverse as a whole has a problem in that Microblogging is seen as something foundational to #ActivityPub, a given upon which all else is built. Protocol capabilities. But this is, should not be, the case.
Microblogging constitutes a domain, a set of user stories with well-define particular behavior. Or as app domains (Mastodon) + FEP practices.
@smallcircles🫧 socialcoding..
@jerger
@mariusormarius I meant "generic" primarily to mean it's not a client for a specific server implementation. In this case, it is a C2S testing client so it is not specific to a particular user domain either. In the first sense of "generic", I could imagine a media publishing app (images, videos) that's not tied specifical to PixelFed or PeerTube (as examples). Or a "generic" microblogging app. The latter is where the Note to Article conversion would probably be an issue.
@steveSteve Bate
@jerger
@mariusormarius
Guess this is a general area where due to the lack of clear protocol layering there's much confusion in overall terminology usage.
The whole idea of an "app" is not part of #ActivityPub itself. It is a leaked abstraction on what devs think they offer ("I build an app for my users").
There is no "generic" microblogging app, unless there exists an agreement for the specification of said app. PixelFed is a spec, PeerTube is another spec in different domain. A generic microblogging app would live where? As FEP? Collection of FEP's? W3C Note giving a 'specification profile'?
#AskFedi "Give me the #markdown of this #microblogging discussion please.."
@steveSteve Bate why should C2S being different ?
I agree with this. The #ActivityPub spec says:
> The server MUST then add this new Activity to the outbox collection. Depending on the type of Activity, servers may then be required to carry out further side effects. (However, there is no guarantee that time the Activity may appear in the outbox. The Activity might appear after a delay or disappear at any period). These are described per individual Activity below.
My expectation as a client is that I find the Activity I just sent in the outbox on the server with the same (Note) payload. If there's translation into Article, then this is a side-effect that comes after that.
I'm curious what other devs think about this. If an actor posts an C2S #ActivityPub Create/Note to the outbox, what would you think if the object created by the server was a different type (e.g., Article)?
With https://discover.holos.social we may have highlighted that many Fediverse users don't pay attention to their default settings. We built a fully respectful search engine that only relies on #ActivityPub, with instant deletion, updates, and indexing only consenting users. We will likely shut down the service, but the source code will remain available as we believe the approach is ethical. That same indexable setting already lets Google index your posts and keep them cached long after deletion.
Just sent my first signed request to #Mastodon that was accepted. This took much more time than it should have, but the next steps should become much simpler. #rust #activitypub
RE: https://mastodon.social/@countablenewt/116033103469375924
Not every client for every #ActivityPub service needs to show all content
Take #FediReader, for example
Most of the content on #Mastodon isn't immediately visible in the UI
Posts without links don't show up at all, quote boosts don't show up at all, and any text content shared with the post is hidden in the post detail view
The fun thing about the #SocialWeb is that we can make highly opinionated clients like this for the people who want it
For those that don't, they don't have to use it
let's bring #longform (text) support to the #photoverse
(this is not (mainly) about long texts on #pixelfed or #vernissage (they can both fall back to show the summary), it is about supporting image posts with the object type: `Article`)
* https://github.com/VernissageApp/VernissageServer/pull/442
* https://github.com/pixelfed/pixelfed/pull/6458
https://codeberg.org/fediverse/fep/src/branch/main/fep/b2b8/fep-b2b8.md
Reminder to anyone managing a #ActivityPub project that matrix has been adopted as the chat solution by bookwyrm, write.as, friendica, plume, pleroma, fedilab, funkwhale, mitra, forgefed, mobilizon, phanpy, tokodon, moshidon, lemmy, gotosocial, bonfire, voyager, tusky, lemmy, loops, piefed, pixelfed, manyfold, owncast and others. You don't need to start from scratch if you leave discord : join us on matrix!
Indeed. There's a ton of fedi discussion taking place on Matrix.
Encourage people to check out this huge collection of #ActivityPub / #fediverse related matrix chatrooms gathered (I think) by @codelutin@mastodon.libre-entreprise.com in this #Matrix space:
I gotta say Google, the degradation of your Search product is now almost complete.
I was looking for documents that I am fairly sure exist; at the intersection of three specific technical disciplines.
Namely
#activitypub #duckdb #python
And basically just want to throw my archives into duckdb and have them in whatever schema the JSON-LD of a mastodon archive carries, so I could do a bit of analytics on my past self.
And for the first time you didn't produce a useful top level result that I could use to find what I was looking for.
You've gotten dumber Google and it shows.
I started using a service called Concert Archives (it is what it sounds like) and I really like it! It’s helped me remember live shows that I had forgotten I even went to and artists I didn’t even recall seeing until looking at the archive entries.
I wish it was federated with #ActivityPub, something like that on the fediverse would be very cool.
Here’s my profile (still working on adding concerts, lots more to go…) https://www.concertarchives.org/jonathan-rollans
@jrollansJonathan Rollans I don't know how close #Funkwhale gets to what you seek, but it is an interesting #ActivityPub application to check out, if you didn't know it already..
I started using a service called Concert Archives (it is what it sounds like) and I really like it! It’s helped me remember live shows that I had forgotten I even went to and artists I didn’t even recall seeing until looking at the archive entries.
I wish it was federated with #ActivityPub, something like that on the fediverse would be very cool.
Here’s my profile (still working on adding concerts, lots more to go…) https://www.concertarchives.org/jonathan-rollans
TIL that Accept headers with a ":" cause surprising CORS behavior (the header is no longer "safelisted"). Beware of that when accepting the standard #ActivityPub (via AS2) `application/ld+json; profile="https://www.w3.org/ns/activitystreams"` content type. You've been warned. 😉(Note that you might see the http URL above automatically hyperlinked in your Fedi client.)
I couldn't get pixelfed to work under #NixOS. That's why I'm building pxvoid now. A simple, self-hosted web gallery with #ActivityPub integration. No multi-user management, no filters, no stories, and a local upload script. Follows and likes from the #Fediverse are possible. It's an early alpha version, but the basics work in under 1800 LoC #Python. Now all that's missing is the final design and code cleanup 🥳🎉
@nickNordnick 🐘
@nikclaytonNik
@ntnsndrNathan Schneider
@strypey
@pachli
@bhaugen
@lynnfoster
@Quasit
> Are any of you familiar with #Pachli and its dev team?
Not used, but it is on the delightful fediverse clients curated list..
https://delightful.coding.social/delightful-fediverse-clients/
Die von Mastodon jedenfalls nicht, die stürzt einfach zufällig ab.
Nur iOS, am besten kostenfreie Apps oder nur mit Einmalzahlung, kein Abo!
#iOS #Akkoma #ActivityPub
Has anyone figured out how to use ActivityPub to make something IRC or Discord shaped?
Your Home Feed is the inbox of an ActivityPub actor — in particular YOUR ActivityPub actor.
There could be an actor for each hash-tag, too.
You could even do Del.icio.us like things — and have actors for intersections of hash-tags, too.
These hash-tag actors' inboxes would need to be readable by anyone.
...
This could be a more ActivityPub like API alternative to Mastodon's "GET /API/v1/tags/{name}" API.
#ActivityPub #FediDev #FediDevs #Fediverse #HashTag #HashTags
RE: https://mastodon.social/@verge/116041069446538092
We’ve moved our internal communications from Discord to Zulip at Mastodon, and I think there are plans to do the same for our Patreon community Discord. The harder part will be untangling my gaming communities from this…
Reminder to anyone managing a #ActivityPub project that matrix has been adopted as the chat solution by bookwyrm, write.as, friendica, plume, pleroma, fedilab, funkwhale, mitra, forgefed, mobilizon, phanpy, tokodon, moshidon, lemmy, gotosocial, bonfire, voyager, tusky, lemmy, loops, piefed, pixelfed, manyfold, owncast and others. You don't need to start from scratch if you leave discord : join us on matrix!
Anyone in my followers list on a server that has secure fetch enabled? I want to use it to test my proxyUrl implementation for client to server #ActivityPub. :D
The Future Is Federated
...
And will be federated for the amazing work of the amazing people in the fediverse.
One of my fav photos from #fosdem2026
Sweater by
@_elenaElena Rossini 📍 FOSDEM, photo by
@sturmsuchtChris 🦑
Have you ever considered adding a replyTo field on #ActivityPub?
It would be an easy way to make all my accounts integrated.
I just posted a video on
@loops and I wish I was notified on Mastodon about comments there.
FEP drafting: Am I using “side effects” here the same way as other ActivityPub developers? I've seen the term used a bunch in casual conversation, but my personal understanding of it is kinda fuzzy.
7.9.0 — Spring Cleaning 🪣🧹
ActivityPub for WordPress @activitypub.blog@activitypub.blog
Version 7.9.0 is a spring-cleaning release for ActivityPub for WordPress. Custom Fediverse emoji now render properly, profile and following blocks make it easier to build richer identity pages, and new health checks improve reliability. Alongside performance tweaks and many fixes, this update focuses on polish, stability, and smoother everyday federation.
Read more →there is currently a #Piefed Hackathon going on if anyone is interested in partaking. There are groups working on spanish, german, french and japanese translations, and a bunch of other things.
https://tarte.nuage-libre.fr/c/fediverse/p/221411/hackathon-this-week-7-8-febuary #fediverse #fedidev #activitypub
Portable #ActivityPub objects with server-independent IDs https://codeberg.org/fediverse/fep/src/branch/main/fep/ef61/fep-ef61.md
I have deeply mixed feelings about #ActivityPub's adoption of JSON-LD, as someone who's spent way too long dealing with it while building #Fedify.
Part of me wishes it had never happened. A lot of developers jump into ActivityPub development without really understanding JSON-LD, and honestly, can you blame them? The result is a growing number of implementations producing technically invalid JSON-LD. It works, sort of, because everyone's just pattern-matching against what Mastodon does, but it's not correct. And even developers who do take the time to understand JSON-LD often end up hardcoding their documents anyway, because proper JSON-LD processor libraries simply don't exist for many languages. No safety net, no validation, just vibes and hoping you got the @context right. Naturally, mistakes creep in.
But then the other part of me thinks: well, we're stuck with JSON-LD now. There's no going back. So wouldn't it be nice if people actually used it properly? Process the documents, normalize them, do the compaction and expansion dance the way the spec intended. That's what Fedify does.
Here's the part that really gets to me, though. Because Fedify actually processes JSON-LD correctly, it's more likely to break when talking to implementations that produce malformed documents. From the end user's perspective, Fedify looks like the fragile one. “Why can't I follow this person?” Well, because their server is emitting garbage JSON-LD that happens to work with implementations that just treat it as a regular JSON blob. Every time I get one of these bug reports, I feel a certain injustice. Like being the only person in the group project who actually read the assignment.
To be fair, there are real practical reasons why most people don't bother with proper JSON-LD processing. Implementing a full processor is genuinely a lot of work. It leans on the entire Linked Data stack, which is bigger than most people expect going in. And the performance cost isn't trivial either. Fedify uses some tricks to keep things fast, and I'll be honest, that code isn't my proudest work.
Anyway, none of this is going anywhere. Just me grumbling into the void. If you're building an ActivityPub implementation, maybe consider using a JSON-LD processor if one's available for your language. And if you're not going to, at least test your output against implementations that do.
@hongminhee洪 民憙 (Hong Minhee)
I'm reading this thread as a relative noob, but what I see again and again: almost no one "properly" implents #ActivityPub largely because #JSONLD is hard but also because the spec itself is unclear. Most people who get stuff done have to go off-spec to actually ship.
This seems a fundamental weakness of the #fediverse - and that disregarding the limitations coming from base architecture. Seems to pose a mid/long-term existential threat.
What can we do to help improve things?












