#webmention — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #webmention, aggregated by home.social.
-
My day so far
Got up after a good long sleep and decided to add some pictures to my /me page. Decided that the pictures should be hosted on the same domain but that another subdomain was probably okay.
Got sidetracked checking out my many open tabs with the intention of closing some. More tabs are now open.
Browsed places I have previously shared pictures.
Got sidetracked looking at my past photography.
Post the first picture to my social media node (here). Added it to my /me page.
Added a link to my site about my dad as it was relevant.
Got sidetracked updating the code that runs the site. All up to date.
Posted said first post. That’s odd; the manual ping did not send. Sent a ping.
Got sidetracked when I remembered one of my blogs was flooding someone’s website with mentions.
Got sidetracked reading their blog while trying to remember which site I linked to it on.
Remembered and opened the blog in question.
Got sidetracked checking comments held for moderation.
Got sidetracked replying to comments
Got sidetracked following a link in the comments
Got sidetracked reading about ADHD diagnosis options
Got sidetracked messaging my sister about an idea from following the link
Got sidetracked posting a reply thanking for link
Got sidetracked back to bug hunting.
Got sidetracked when asking AI why the pings keep sending; learned I might want to look at the post meta for pings sent. Realised I needed to know the blog ID as it is part of a network.
Went to the blog’s parent blog to look up its blog ID.
Got sidetracked removing spam from parent blog
Got sidetracked checking which email domains spammers were using and blocking them
Got sidetracked refreshing RSS feeds for the parent site.
Looked up blog ID; opened PHPMyAdmin to look at post meta. Yep, the flooded site is not listed.
Went to GitHub and found someone had opened an issue about this. Posted my findings to the issue.
Got sidetracked browsing the issues on GitHub
Got sidetracked commenting on issues
Got sidetracked when I panicked and thought it was Thursday, and I was running late. I was halfway to getting ready to go out when I realised it was Wednesday.
Got sidetracked writing this post about how often I got distracted today
What do you mean by attention issue?
I guess I will try and find my way back to adding photos to my /me page.
-
My day so far
Got up after a good long sleep and decided to add some pictures to my /me page. Decided that the pictures should be hosted on the same domain but that another subdomain was probably okay.
Got sidetracked checking out my many open tabs with the intention of closing some. More tabs are now open.
Browsed places I have previously shared pictures.
Got sidetracked looking at my past photography.
Post the first picture to my social media node (here). Added it to my /me page.
Added a link to my site about my dad as it was relevant.
Got sidetracked updating the code that runs the site. All up to date.
Posted said first post. That’s odd; the manual ping did not send. Sent a ping.
Got sidetracked when I remembered one of my blogs was flooding someone’s website with mentions.
Got sidetracked reading their blog while trying to remember which site I linked to it on.
Remembered and opened the blog in question.
Got sidetracked checking comments held for moderation.
Got sidetracked replying to comments
Got sidetracked following a link in the comments
Got sidetracked reading about ADHD diagnosis options
Got sidetracked messaging my sister about an idea from following the link
Got sidetracked posting a reply thanking for link
Got sidetracked back to bug hunting.
Got sidetracked when asking AI why the pings keep sending; learned I might want to look at the post meta for pings sent. Realised I needed to know the blog ID as it is part of a network.
Went to the blog’s parent blog to look up its blog ID.
Got sidetracked removing spam from parent blog
Got sidetracked checking which email domains spammers were using and blocking them
Got sidetracked refreshing RSS feeds for the parent site.
Looked up blog ID; opened PHPMyAdmin to look at post meta. Yep, the flooded site is not listed.
Went to GitHub and found someone had opened an issue about this. Posted my findings to the issue.
Got sidetracked browsing the issues on GitHub
Got sidetracked commenting on issues
Got sidetracked when I panicked and thought it was Thursday, and I was running late. I was halfway to getting ready to go out when I realised it was Wednesday.
Got sidetracked writing this post about how often I got distracted today
What do you mean by attention issue?
I guess I will try and find my way back to adding photos to my /me page.
-
I joined the IndieWeb; here's what I learned.
What it is, its principles, which protocols I implemented (h-entry, Webmention, WebSub...), which I skipped and why, and what actually made a difference.
https://en.andros.dev/blog/0b8e451e/i-joined-the-indieweb-heres-what-i-learned/
#IndieWeb #PersonalWeb #Webmention #OpenWeb #SelfHosted -
I joined the IndieWeb; here's what I learned.
What it is, its principles, which protocols I implemented (h-entry, Webmention, WebSub...), which I skipped and why, and what actually made a difference.
https://en.andros.dev/blog/0b8e451e/i-joined-the-indieweb-heres-what-i-learned/
#IndieWeb #PersonalWeb #Webmention #OpenWeb #SelfHosted -
does a #webmention avatar have to be square?
#indieweb -
does a #webmention avatar have to be square?
#indieweb -
Snapshot of my blog’s reactions by week
I love getting likes, shares, and all that. I also enjoy charting things. Thus, I charted some data from my fediverse instance that is also a blog.
As well as being a bit of the fediverse, this account is also a single-user #WordPress blog. It receives ActivityPub likes, replies, and boosts, WebMentions, pingbacks, trackbacks, pings, and local comments.
The data for the chart is updated once a day and does not show the current week. That’s to stop the last data point looking low and to stop me obsessing over my reaction count while still letting me view nicely formatted data.
You can see the live chart on my blog. Today (8th July) it will look exactly the same. It will remain fairly similar until Monday morning. The chart uses Google Charts because I don’t like to reinvent the square wheel and I’m not that good at JavaScript to roll my own. Feel free to suggest open source libraries that can do this to a similar standard.
-
Snapshot of my blog’s reactions by week
I love getting likes, shares, and all that. I also enjoy charting things. Thus, I charted some data from my fediverse instance that is also a blog.
As well as being a bit of the fediverse, this account is also a single-user #WordPress blog. It receives ActivityPub likes, replies, and boosts, WebMentions, pingbacks, trackbacks, pings, and local comments.
The data for the chart is updated once a day and does not show the current week. That’s to stop the last data point looking low and to stop me obsessing over my reaction count while still letting me view nicely formatted data.
You can see the live chart on my blog. Today (8th July) it will look exactly the same. It will remain fairly similar until Monday morning. The chart uses Google Charts because I don’t like to reinvent the square wheel and I’m not that good at JavaScript to roll my own. Feel free to suggest open source libraries that can do this to a similar standard.
-
@michaelharley That's a very good point about making those distinctions; it is the next thing on my to-do list :-/
But at the moment I'm more bothered by the ones that just seem to ignore you altogether...
-
@michaelharley That's a very good point about making those distinctions; it is the next thing on my to-do list :-/
But at the moment I'm more bothered by the ones that just seem to ignore you altogether...
-
I'm now sending out charmed webmentions to inform/notify commenters on my blog when their comments get responses.
https://khleedril.org/blog/2026-06-21--charmed-webmentions.html
-
I'm now sending out charmed webmentions to inform/notify commenters on my blog when their comments get responses.
https://khleedril.org/blog/2026-06-21--charmed-webmentions.html
-
Huh. I've never seen that before. In the #snac web interface, it shows up as a #WebMention.
Pity @tut isn't being developed anymore. :'(
-
Huh. I've never seen that before. In the #snac web interface, it shows up as a #WebMention.
Pity @tut isn't being developed anymore. :'(
-
im not really sold on activitypub or atproto as a standard. has anyone made an app where you subscribe to people via an rss/atom feed and then replies/reblogs are handled by outgoing rss/atom feeds, possibly using some sort of email or webmention service so they know when they've been replied to? if not, is anyone working on one so I can donate to them?
#web1 #website #rss #webmention -
im not really sold on activitypub or atproto as a standard. has anyone made an app where you subscribe to people via an rss/atom feed and then replies/reblogs are handled by outgoing rss/atom feeds, possibly using some sort of email or webmention service so they know when they've been replied to? if not, is anyone working on one so I can donate to them?
#web1 #website #rss #webmention -
Hmmm, if you send a #webmention, make sure you don't throw an error when the mentioned client tries to parse your website to see if you _actually_ mentioned
-
Hmmm, if you send a #webmention, make sure you don't throw an error when the mentioned client tries to parse your website to see if you _actually_ mentioned
-
I wonder why #BearBlog doesn't bake in #webmention support by default.
-
I wonder why #BearBlog doesn't bake in #webmention support by default.
-
The email, social media, and IndieWeb Node I need (that will probably never exist), that I think authors would love
I need a special blend of stuff that might never exist. This is my attempt to dream out loud in the hope that this is the idea someone steals and runs with.
What I want is a social media, Indieweb, blog, email, and personal note-taking app mashup that blends everything seamlessly together while also being free and open source, without a single dictator who can go mad one day and ruin it or a small team that makes it complicated so they can sell consulting. WordPress and Drupal, I’m looking at you.
Node is also something for us authors
I picture this Node thing being a whole sort of general mishmash of all the things. A place where we authors can publish articles and others can subscribe to them, but also a place where we can be social and connect with people regardless of their chosen means of communication.
I’m going to get into selling books and gaining subscribers much further down the page. The thing that I like about this Node idea for us authors is tracking submissions to publications, and agents should include keeping track of emails and keep it all associated with an object that represents the work. This Node thing could be extended to log your work, where you have sold it, which rights you have sold, who has rejected it and every email chain about it.
Add to that group fan contacts with the work they are talking about, and I think that could be something really special. If you keep getting asked the same question about side character seventeen, it might be nice to remember what you said the last million times.
Node: The Content & The Sources
This CMS monster (I’m calling it a Node) should be able to take email inboxes, RSS feeds, social media accounts, ActivityPub profiles, blogs, WebMentions, and anything else that even remotely has a way to be pulled in. These I shall call, The Sources.
I want to pull all The Sources in and treat them in the same way – feeling like social media – regardless of the way they came in.
I need the UI to feel like Mastodon stole Facebook’s lunch. By which I mean I want a social media (ish) stream of everything I have incoming. All this stuff – every bit of it – shall collectively be called The Content. The singular of The Content shall be a The Content Item (or Item for short).
Each Item will have as much metadata as it needs hidden out of my face so the system can do useful stuff with it and pick the right protocols to respond with.
I would love to have some sort of Node-aware API so that when I find other people using it, my Node and their Node can negotiate the best way for the two to talk. Thus allowing me to follow or subscribe.
The Feed: A general shape of Node
The Content forms a social media stream, let’s call it The Feed. Everything (almost) is in The Feed. All presented the same social media way.
The Feed appears in reverse chronological order – newer stuff first. But I should be able to filter boring items (I’ll come back to this).
When I reply to an Item in The Feed, the metadata for that Item should route my reply back the way the thing came in. Email, ActivityPub, etc. My replies should only be public if The Content type is set to public reply, but I should have reasonable override options.
If a reply comes in to some threaded Items in The Content, the reply should appear in my feed and link to the thread if I want to see the content of The Content Item.
There will be no AI. Unless I want AI, which will be a tiny model that the Node runs in the background to summarise stuff for me. Maybe…
The Follows: Sudo-users and stuff
The Sources of The Content shall be presented as people I follow or subscribe to, like I was on social media – because in my mind, I am. Let’s call these The Follows.
I want to be able to look at the “profiles” of my The Follows, which is essentially part of my address book but looks like a social media profile. The Follows’ profiles can have some numbers and some notion of when we last communicated. Plus anything else I might want to note, like birthday, favourate chocolate, or whatever. If there is actual profile information available, that should also show up.
I want to be able to initiate contact with a profile, be that via mention ping, private email or whatever. I’ve got a whole section on email further down the page.
My public wall/stream thing
I want a place where I can post stuff. The default way should be some sort of ActivityPub-enabled blog post thing. This content must be able to take WebMention pings.
For public replies to Items in The Feed, they should go here. I’m thinking ActivityPub (public, quite public) and WebMention, etc.
The section should feel a lot like using Mastodon, Twitter when it was good, and similar social media. The difference, of course, is that it is POSSE – Publish (on your) Own Site, Syndicate Elsewhere.
There should be an option for the Node user to allow local comments on their local Items. Thus making it sort of a blog.
My private content
I’m going to talk about email further on, but this includes email.
Some of the API or protocols that bring me The Content are, by definition, private reply. My replies via private channels should be seen only by me and whoever receives the reply. The same is true for conversations I start (like sending an email, for example).
Because there exist methods for true or nearly private messages, we have actual PM capabilities. Some may even feature public key cryptography and the like. The Node must handle this for me, too.
It should go without saying that private content should not show up in the RSS feed for the blog-like features.
There are new PMs should probably be a notification thing (I’m coming to that)
The Followers can be Subscribers
Followers should not be confused with Follows. Follows are who I follow, Followers are who follow me.
I want people who come across my Node’s public-facing website to have the option to subscribe in a bunch of ways. Not least of all via email, ActivityPub, RSS, or Node-to-Node.
This means my Node is an email list (with automated unsubscribe features) and a Mastodon Instance, and a blog, and…
Additionally, I want some limited account creation so people can manage their subscription methods. With this, I want the option for people to have Patreon-like support options. I want to be able to extend this to paid subscriptions to my very best content (if I want to make it and they want to buy it).
The Shop: Object-like items that can be searched
If I sell anything or offer any paid options at all (maybe I don’t want to), I want to be able to set up a product store.
This store should also include item-object ideas like “my book, which is sold by these vendors,” or “this affiliate product that keeps the bills paid”.
Yes, pushing products might feel tacky, but the sad truth is we all need to eat, and websites are not free. I want a transparent and searchable collection of Item-like objects with Local Comments and an optional shopping cart system so I can spend my time chatting rather than making product pages.
Also, I want to be able to offer free stuff. Maybe I will offer it in exchange for The Followers subscribing to a newsletter. Maybe I just give it away. Perhaps it is free to anyone who subscribes (at a certain level). Whatever my putting-food-on-the-table model is, I need the Node to handle it for me.
The Notifications & The Statistics: A fancy log thing
There will also be The Notifications for stuff I don’t need to get slammed with (like certain websites that shall remain nameless tend to do – I don’t need hour reminders that you exist). The Notifications are like Facebook notifications before Meta tried to cram everything in there to make room for advertisers elsewhere.
The notifications should boil down to The Statistics – a summary of the notifications I’ve been ignoring in case I need a broad overview later. Essentially, logs, like the kind you get with your web hosting.
The Statistics system is going to need some cool tools to allow me to show it how to count, scan, add up and do useful stuff with The Content, which is basically just FYI and/or the count of today’s stuff (or whatever).
I want a Bayesian filter that can be trained in the distinction between “Matt needs to see this” and “Matt doesn’t give a rat’s bum”. The “Matt does not care” items of The Content should go into The Notifications unless I choose to just have them deleted and the counter incremented.
Because I am an idiot, “deleted” items should hang about in a recycle bin for a bit.
Groups
I want to be able to set The Feed to shunt items of The Content into Groups (along with filter information to automate said shunting going forward). Groups should give me a single notification in The Notifications of how many items were added to a Group since I last opened it. Unless I tell it not to (mute the Group), or I hit some amount of time that if I go past, it mutes it.
Groups are where work, club, and project The Content Items go. This keeps The Feed free for social connections and cat pictures (the way it should be).
The option to add a Bayesian filter to a group would be good. Given I’m asking for one other place, one or two more should not matter.
I also need to be able to add specific members of The Sources to a dedicated group so I can create accounts for clubs, work, business, projects, or stuff I do for the LOLs, and operate it entirely separately from my main stuff. These should have a separate profile/identity/user-dodad so they are sort of like Facebook pages, but a lot more flexible and fun to use.
I’d like to be able to move an RSS feed from The Feed to a Group or just add the RSS directly to a group.
Another Group feature needs to be expiring content. In a Group with expire switched on, Items older than X days are deleted unless the “content I have reacted to should stay” option is also on.
What I need from the email part
I hate email. I loathe it with every fibre of my being. Sadly, it is often the best solution for PMs and group chats.
Every single part of my imaginary Node thing must not – in any way – feel like email. Least of all the actual email. Any email must be just another part of The Content in The Feed.
I need the Node to pull in my email from as many addresses as I want it to. Be able to segment by email address and yet present them as a whole sort of mish-mash of things that is The Content. This mish-mash should be able to filter notification emails into The Notifications. I want to be able to set a universal timeout after which the notification email is silently compressed into statistics and deleted. I also want to be able to set per sender and per-inbox overrides.
I imagine Node having a single primary email address but allowing me to associate Follows and Groups with specific inboxes. That way, people get their emails from the email address they were expecting it from. This also allows me to manage multiple email accounts and segment them into manageable organisational shapes (Groups).
I reserve the right to consign some senders to a pattern recognition thing (not AI) that can summarise the data part (numbers, counts, etc.) and add it to The Statistics log without me having to look at it.
I need it to maintain email threads like they were a toot, tweet, post, share, etc., with the rest under it like replies. When I reply, it needs to build and send the email to everyone in the parent emails and offer me the chance to shoot the reply to everyone.
Emails from people not in The Follows should go into a system-defined Group so they don’t bother me with crap in The Feed that I don’t care about. There should be a single stat in The Notifications about this Group.
Another system-defined Group is where the spam filter sends spam (not just, but mostly, email spam).
Talking of Spam. I would like Node to be capable of being given an entire MX record, for which it can generate email inboxes. These inboxes get a group that is muted by default. They also get told a very limited number of senders (with or without time limits), and anything not conforming to these strict restrictions gets silently redirected to oblivion. Thus, I can sign up for stuff and not worry if that email address gets sold or exposed in a leak. Unauthorised senders are silently discarded. I call these: One Shot Email Addresses.
Social media and forum email updates (the bane of my life) should be filtered into an updates group. Same for commercial content. Same for any other classification of boring email I can think up. That’s where filter rules and/or a Bayesian filter I can train come in. Boring stuff should get summarised in The Statistics or shoved into a group I can ignore for as long as I wish.
You may also want to look at: Technical thoughts on email processing.
Extending Node: CRM
Now that I have come to write it all down, this Node idea seems to share a lot of DNA with your standard CRM – Customer Relationship Manager systems. Things like Salesforce.
Back at the top of the page, I wrote that Node was something for us authors. Now that I am near the bottom of the page, I realise that I was describing an author-specific CRM. That tracking of agents, publications, and fans is exactly what a CRM is for. Except, Node also includes social media, and blogging, and subscription content. Node could be a CRM that is better suited to authors and other self-employed celebrities.
Perhaps that is what social media could evolve into: a thing that is part CRM, part chat space, and part blog with email running under the hood. Or not.
My point is that Node would lend itself to a range of social and communication tasks, not just hanging out and sharing shower thoughts.
Extending Node: Projects
I start a lot of projects. I even finish some.
If Node can be a bit CRM, it could also be a bit project coordination too.
Take a group, add an email address to it, and funnel conversation about the project in there too. Finally, you set up blog-like subscribable content and you now have a sub-Node for a project. It is a little bit forum, a little bit mailing list, a little bit email groupware, a little bit social media, and a whole lot nice to use (in my imagination).
I think Node would be great for coordination projects, group tasks, and all that sort of good stuff.
I imagine it would lend itself to private (or subscriber-only) to-do lists, planning boards and all of that techno team collaberation stuff. Or, if not fully that, a doorway into that world presented as part of your social media UI.
Technical thoughts on email processing
There are two main ways of dealing with email: IMAP and POP3. IMAP supports folders POP3 is simpler and does not. This means that one way that a complicated inbox might filter emails before they become items is to use IMAP folders. Is this the best way? I’m not sure.
Another issue to consider is storage. Should your Node leave emails on the server or pull them off and cache them locally? Both have storage implications.
Leave the emails on the server, and you make the email server responsible for your email storage. That’s fine, it was designed to do that. However, your node has to do more work maintaining sync, which could be tricky, but does make email chain tracking much easier.
Pull the emails to the Node, and you keep an empty inbox, but now you can only see your emails on your Node. This might not be good for business things.
Once more, keep or take might have to be user-defined on a per-inbox basis. One Shot Email Addresses should probably take by default.
If that’s not a headache, we also have to deal with sending emails. Just because my Node has hidden the email part under this abstraction, it still has to be email. There are two ways to send an email from Node.
- SMTP, where the inbox does the sending
- Local sending such as
sendmail()on PHP
Both have config issues for the user to deal with, as well as spam filtering and sender authorisation stuff. I imagine that this alone will cause a fair amount of faff for setup. A really good Node CMS will have to do a fair amount of hand-holding for less technical users.
Technical thoughts on PULLing data
Things like RSS operate on a pull model – you pull the latest copy when you want to see it. Do that too often, and you abuse the feature (and risk being blocked); do it too infrequently, and the RSS feed is stale.
All pull based API should be linked to a central pull controller of some kind. The pull controller, which will probably run on a cron job (time-triggered action), should have reasonable cache time settings. A TTL, if you will. The job of the pull controller will be to poll for updates and pull those updates in a respectful way.
Depending on the API and any settings customised per pull thin by the Node user, pulls will happen at different rates.
This creates a lag problem for your Node. Where do you put new items – on the second page because of the delay, or at the top because we just got it?
I suggest that the best compromise is to allow the Node user to choose between “add the Item to The Feed based on its published date” and “add to The Feed when the controller first finds it”. Depending on Node usage and how many incoming Items the Node user gets, one may be better than the other.
Implementation Thoughts: Modules all the way down
I don’t think one big monolith is the way to implement Node.
I foresee it being a framework with each possible one of The Sources are seperate modules. That way, you only install what you need.
If a motivated enough geek wants to add their particular thing to Node and they have the skills, they can write one, share it, and we all get a richer Node experience.
Most, if not all, of the features (including email) should, I would suggest, be a module.
Implementation Thoughts: Facebook and the like
There are a lot of people I interact with mostly on Facebook. I would love for a premade “Facebook App” that Node can deploy that gives its users a direct Facebook account connection. Something that could manage the timeline and extend the idea of syndicating stuff a little further.
I guess (without checking) that some other social media platforms might be – with enough technical know-how – open to similar extension.
Or not. Experts, please enlighten us.
Implementation Thoughts: I don’t want WordPress
When WordPress is your hammer, everything starts to look like a nail. I do not think this Node idea is a WordPress-shaped problem. Sure, it has a few WordPress features and plugins that add more, but this feels like a specific enough need to demand its own ecosystem: One where the WordPress singular dictator can’t go mad again and ruin things.
The core of Node needs to do a lot of content management for the user. It needs access to email accounts, Mastodon accounts, and other sensitive stuff. It needs to be privacy first.
WordPress would bring a powerful blog, but at the cost of a lot of WordPress overhead and cruft. I’m imagining a more slimline and domain-specific framework where different source API or protocols can be their own first-class module.
I’ve nothing against a module that bridges the gap and uses WordPress as the blog-like public part. I just don’t want that as the default.
Implementation Thoughts: I like PHP, but I am not married to it
As a heavy PHP user, I love the idea of running my node on my PHP-based web hosting. But that does not have to be the only way this works.
For example, Node could be a thing that runs on your PC. Perhaps PHP-based is just what the web-facing thing does and is controlled by Node. The website is a thin interface for web-based stuff, but working at the behest of a more powerful (and private) local instance. There could even be different flavours of web-facing to suit different users.
In which case, the web-facing part just needs to implement an interface (an API) that Node can command.
Implementation Thoughts: Database vs Files
While writing this, I’ve been thinking a lot about storage. Some of The Content is transient and eventually gets moved to the recycle bin to await final deletion. Others – like content the Node user writes – will probably hang about for ages.
Then there are things like the WebMention pings, ActivityPub throughput, RSS feeds, and comments that sit in the “it depends” section.
Databases are good for things that should be indexed and require powerful search and find. While files are good when you know exactly what you need and can just grab it. This is why WordPress runs with a MySQL database, and Obsidian.md uses text files.
Email, for example, is essentially stored as a file. If we are being picky, the database is also just a file. Hmm… I’m getting off topic.
I think there is a case to be made for a mixed approach. Inbound WebMentions are probably best stored in a database, but are the blog-like posts themselves?
My instincts are for file-based The Content, where each Item is a separate file with a header for reply routing and a body for showing to you. Your private side of your Node does not have a huge concurrency issue – there is just you.
Another factor is cost. On the whole, files are cheaper than databases and are best for low-access storage of lots of stuff. You will generally just look at a single page of items, and can fetch the next page on a second request. You are not searching, you are simply browsing a folder, really.
If Items are files, groups are folders.
The public-facing content might (only maybe) benefit from a more write-once and read lots with indexed lookup. (A database).
I’m a fan of databases that stay under 2Gb and image-based media in The Content could clog that up fast.
I like the idea of being able to make edits via FTP or through my file browser. The same is true for backing stuff up. Not to mention, file permissions give you pretty solid read and write access control with any competent OS.
File locking exists, but yes, I know row and table locking also exist. I’m just saying that if you run lots of background tasks, whoever gets the file lock first has the file. Now that I come to write that, it is not the slam-dunk I thought it was just a minute ago.
Sidebar: You can’t have a table crash or get corrupted if you don’t have a table to start with. Yes, I know that is a weak argument. Bite me.
As for note-taking, file all the way. Ideally, MD stuff that is compatible with Obsidian.md for cross-portability.
Feel free to disagree with me on this whole section or part thereof.
Well, that’s the Node thing I dream of – what do you think?
What I am saying is that I want to merge Social Media, Blogging, and eMail. Merge it in a very specific way.
What? A geek can dream, right?
- What do you think? How hard would it be to get a project like this started?
- Would you use Node?
- Are you able to come up with a better name than Node?
- Do you hate email as much as I do?
- Am I just a crazy man with a blog? (Well, yes)
Feel free to agree, disagree, find fault, offer ideas, or whatever you have to say.
Glossary: Defining some terms
Bayesian filter
A spam classification technology that takes all the text in a thing, like a comment or an item, and adjusts the weights of each word to determine if the thing is or is not an example of that thing.
While not the cutting edge of spam filtering any more, it should be more than up to the job of classifying Node Items without resorting to expensive and privacy-leaking AI.
- https://en.wikipedia.org/wiki/Bayesian_statistics
- https://www.sciencedirect.com/topics/engineering/bayesian-filtering
- https://www.threatdown.com/blog/explained-bayesian-spam-filtering/
Mastodon/ActivityPub
Mastodon is a distributed open-source social network that has grown in popularity as a nicer alternative to Twitter. Even though Mastodon runs on lots of servers, they all talk to each other using ActivityPub, as do a few other oscila media things. An account on one gives you access to (almost) all the others.
- https://joinmastodon.org/
- https://joinpeertube.org/
- https://indieweb.org/ActivityPub
- https://www.w3.org/TR/activitypub/
- https://wordpress.org/plugins/activitypub/
- https://mastodon.isbrill.com/
- https://activitypub.isbrill.com/
RSS
RSS is a technology that used to be popular for syndicating content from one place to another. RSS is often used to subscribe to a blog in a way that allows you to pull the content when you want to see it.
I have a thing set up to run FreshRSS (link in the list below), but it looks too much like email; I did not get on with it.
- https://indieweb.org/RSS
- https://en.wikipedia.org/wiki/RSS
- https://freshrss.org
- https://github.com/tontof/kriss_feed
WebMention
WebMention is a ping-based idea where you mention (link to a page) and then ping the page to say, “here’s my comment”. It allows commenting on a thing from your own publishing space. WebMention is likely to be a core Node technology.
- https://en.wikipedia.org/wiki/Webmention
- https://www.w3.org/TR/webmention/
- https://indieweb.org/Webmention
- https://webmention.isbrill.com/
- https://wordpress.org/plugins/webmention/
-
The email, social media, and IndieWeb Node I need (that will probably never exist), that I think authors would love
I need a special blend of stuff that might never exist. This is my attempt to dream out loud in the hope that this is the idea someone steals and runs with.
What I want is a social media, Indieweb, blog, email, and personal note-taking app mashup that blends everything seamlessly together while also being free and open source, without a single dictator who can go mad one day and ruin it or a small team that makes it complicated so they can sell consulting. WordPress and Drupal, I’m looking at you.
Node is also something for us authors
I picture this Node thing being a whole sort of general mishmash of all the things. A place where we authors can publish articles and others can subscribe to them, but also a place where we can be social and connect with people regardless of their chosen means of communication.
I’m going to get into selling books and gaining subscribers much further down the page. The thing that I like about this Node idea for us authors is tracking submissions to publications, and agents should include keeping track of emails and keep it all associated with an object that represents the work. This Node thing could be extended to log your work, where you have sold it, which rights you have sold, who has rejected it and every email chain about it.
Add to that group fan contacts with the work they are talking about, and I think that could be something really special. If you keep getting asked the same question about side character seventeen, it might be nice to remember what you said the last million times.
Node: The Content & The Sources
This CMS monster (I’m calling it a Node) should be able to take email inboxes, RSS feeds, social media accounts, ActivityPub profiles, blogs, WebMentions, and anything else that even remotely has a way to be pulled in. These I shall call, The Sources.
I want to pull all The Sources in and treat them in the same way – feeling like social media – regardless of the way they came in.
I need the UI to feel like Mastodon stole Facebook’s lunch. By which I mean I want a social media (ish) stream of everything I have incoming. All this stuff – every bit of it – shall collectively be called The Content. The singular of The Content shall be a The Content Item (or Item for short).
Each Item will have as much metadata as it needs hidden out of my face so the system can do useful stuff with it and pick the right protocols to respond with.
I would love to have some sort of Node-aware API so that when I find other people using it, my Node and their Node can negotiate the best way for the two to talk. Thus allowing me to follow or subscribe.
The Feed: A general shape of Node
The Content forms a social media stream, let’s call it The Feed. Everything (almost) is in The Feed. All presented the same social media way.
The Feed appears in reverse chronological order – newer stuff first. But I should be able to filter boring items (I’ll come back to this).
When I reply to an Item in The Feed, the metadata for that Item should route my reply back the way the thing came in. Email, ActivityPub, etc. My replies should only be public if The Content type is set to public reply, but I should have reasonable override options.
If a reply comes in to some threaded Items in The Content, the reply should appear in my feed and link to the thread if I want to see the content of The Content Item.
There will be no AI. Unless I want AI, which will be a tiny model that the Node runs in the background to summarise stuff for me. Maybe…
The Follows: Sudo-users and stuff
The Sources of The Content shall be presented as people I follow or subscribe to, like I was on social media – because in my mind, I am. Let’s call these The Follows.
I want to be able to look at the “profiles” of my The Follows, which is essentially part of my address book but looks like a social media profile. The Follows’ profiles can have some numbers and some notion of when we last communicated. Plus anything else I might want to note, like birthday, favourate chocolate, or whatever. If there is actual profile information available, that should also show up.
I want to be able to initiate contact with a profile, be that via mention ping, private email or whatever. I’ve got a whole section on email further down the page.
My public wall/stream thing
I want a place where I can post stuff. The default way should be some sort of ActivityPub-enabled blog post thing. This content must be able to take WebMention pings.
For public replies to Items in The Feed, they should go here. I’m thinking ActivityPub (public, quite public) and WebMention, etc.
The section should feel a lot like using Mastodon, Twitter when it was good, and similar social media. The difference, of course, is that it is POSSE – Publish (on your) Own Site, Syndicate Elsewhere.
There should be an option for the Node user to allow local comments on their local Items. Thus making it sort of a blog.
My private content
I’m going to talk about email further on, but this includes email.
Some of the API or protocols that bring me The Content are, by definition, private reply. My replies via private channels should be seen only by me and whoever receives the reply. The same is true for conversations I start (like sending an email, for example).
Because there exist methods for true or nearly private messages, we have actual PM capabilities. Some may even feature public key cryptography and the like. The Node must handle this for me, too.
It should go without saying that private content should not show up in the RSS feed for the blog-like features.
There are new PMs should probably be a notification thing (I’m coming to that)
The Followers can be Subscribers
Followers should not be confused with Follows. Follows are who I follow, Followers are who follow me.
I want people who come across my Node’s public-facing website to have the option to subscribe in a bunch of ways. Not least of all via email, ActivityPub, RSS, or Node-to-Node.
This means my Node is an email list (with automated unsubscribe features) and a Mastodon Instance, and a blog, and…
Additionally, I want some limited account creation so people can manage their subscription methods. With this, I want the option for people to have Patreon-like support options. I want to be able to extend this to paid subscriptions to my very best content (if I want to make it and they want to buy it).
The Shop: Object-like items that can be searched
If I sell anything or offer any paid options at all (maybe I don’t want to), I want to be able to set up a product store.
This store should also include item-object ideas like “my book, which is sold by these vendors,” or “this affiliate product that keeps the bills paid”.
Yes, pushing products might feel tacky, but the sad truth is we all need to eat, and websites are not free. I want a transparent and searchable collection of Item-like objects with Local Comments and an optional shopping cart system so I can spend my time chatting rather than making product pages.
Also, I want to be able to offer free stuff. Maybe I will offer it in exchange for The Followers subscribing to a newsletter. Maybe I just give it away. Perhaps it is free to anyone who subscribes (at a certain level). Whatever my putting-food-on-the-table model is, I need the Node to handle it for me.
The Notifications & The Statistics: A fancy log thing
There will also be The Notifications for stuff I don’t need to get slammed with (like certain websites that shall remain nameless tend to do – I don’t need hour reminders that you exist). The Notifications are like Facebook notifications before Meta tried to cram everything in there to make room for advertisers elsewhere.
The notifications should boil down to The Statistics – a summary of the notifications I’ve been ignoring in case I need a broad overview later. Essentially, logs, like the kind you get with your web hosting.
The Statistics system is going to need some cool tools to allow me to show it how to count, scan, add up and do useful stuff with The Content, which is basically just FYI and/or the count of today’s stuff (or whatever).
I want a Bayesian filter that can be trained in the distinction between “Matt needs to see this” and “Matt doesn’t give a rat’s bum”. The “Matt does not care” items of The Content should go into The Notifications unless I choose to just have them deleted and the counter incremented.
Because I am an idiot, “deleted” items should hang about in a recycle bin for a bit.
Groups
I want to be able to set The Feed to shunt items of The Content into Groups (along with filter information to automate said shunting going forward). Groups should give me a single notification in The Notifications of how many items were added to a Group since I last opened it. Unless I tell it not to (mute the Group), or I hit some amount of time that if I go past, it mutes it.
Groups are where work, club, and project The Content Items go. This keeps The Feed free for social connections and cat pictures (the way it should be).
The option to add a Bayesian filter to a group would be good. Given I’m asking for one other place, one or two more should not matter.
I also need to be able to add specific members of The Sources to a dedicated group so I can create accounts for clubs, work, business, projects, or stuff I do for the LOLs, and operate it entirely separately from my main stuff. These should have a separate profile/identity/user-dodad so they are sort of like Facebook pages, but a lot more flexible and fun to use.
I’d like to be able to move an RSS feed from The Feed to a Group or just add the RSS directly to a group.
Another Group feature needs to be expiring content. In a Group with expire switched on, Items older than X days are deleted unless the “content I have reacted to should stay” option is also on.
What I need from the email part
I hate email. I loathe it with every fibre of my being. Sadly, it is often the best solution for PMs and group chats.
Every single part of my imaginary Node thing must not – in any way – feel like email. Least of all the actual email. Any email must be just another part of The Content in The Feed.
I need the Node to pull in my email from as many addresses as I want it to. Be able to segment by email address and yet present them as a whole sort of mish-mash of things that is The Content. This mish-mash should be able to filter notification emails into The Notifications. I want to be able to set a universal timeout after which the notification email is silently compressed into statistics and deleted. I also want to be able to set per sender and per-inbox overrides.
I imagine Node having a single primary email address but allowing me to associate Follows and Groups with specific inboxes. That way, people get their emails from the email address they were expecting it from. This also allows me to manage multiple email accounts and segment them into manageable organisational shapes (Groups).
I reserve the right to consign some senders to a pattern recognition thing (not AI) that can summarise the data part (numbers, counts, etc.) and add it to The Statistics log without me having to look at it.
I need it to maintain email threads like they were a toot, tweet, post, share, etc., with the rest under it like replies. When I reply, it needs to build and send the email to everyone in the parent emails and offer me the chance to shoot the reply to everyone.
Emails from people not in The Follows should go into a system-defined Group so they don’t bother me with crap in The Feed that I don’t care about. There should be a single stat in The Notifications about this Group.
Another system-defined Group is where the spam filter sends spam (not just, but mostly, email spam).
Talking of Spam. I would like Node to be capable of being given an entire MX record, for which it can generate email inboxes. These inboxes get a group that is muted by default. They also get told a very limited number of senders (with or without time limits), and anything not conforming to these strict restrictions gets silently redirected to oblivion. Thus, I can sign up for stuff and not worry if that email address gets sold or exposed in a leak. Unauthorised senders are silently discarded. I call these: One Shot Email Addresses.
Social media and forum email updates (the bane of my life) should be filtered into an updates group. Same for commercial content. Same for any other classification of boring email I can think up. That’s where filter rules and/or a Bayesian filter I can train come in. Boring stuff should get summarised in The Statistics or shoved into a group I can ignore for as long as I wish.
You may also want to look at: Technical thoughts on email processing.
Extending Node: CRM
Now that I have come to write it all down, this Node idea seems to share a lot of DNA with your standard CRM – Customer Relationship Manager systems. Things like Salesforce.
Back at the top of the page, I wrote that Node was something for us authors. Now that I am near the bottom of the page, I realise that I was describing an author-specific CRM. That tracking of agents, publications, and fans is exactly what a CRM is for. Except, Node also includes social media, and blogging, and subscription content. Node could be a CRM that is better suited to authors and other self-employed celebrities.
Perhaps that is what social media could evolve into: a thing that is part CRM, part chat space, and part blog with email running under the hood. Or not.
My point is that Node would lend itself to a range of social and communication tasks, not just hanging out and sharing shower thoughts.
Extending Node: Projects
I start a lot of projects. I even finish some.
If Node can be a bit CRM, it could also be a bit project coordination too.
Take a group, add an email address to it, and funnel conversation about the project in there too. Finally, you set up blog-like subscribable content and you now have a sub-Node for a project. It is a little bit forum, a little bit mailing list, a little bit email groupware, a little bit social media, and a whole lot nice to use (in my imagination).
I think Node would be great for coordination projects, group tasks, and all that sort of good stuff.
I imagine it would lend itself to private (or subscriber-only) to-do lists, planning boards and all of that techno team collaberation stuff. Or, if not fully that, a doorway into that world presented as part of your social media UI.
Technical thoughts on email processing
There are two main ways of dealing with email: IMAP and POP3. IMAP supports folders POP3 is simpler and does not. This means that one way that a complicated inbox might filter emails before they become items is to use IMAP folders. Is this the best way? I’m not sure.
Another issue to consider is storage. Should your Node leave emails on the server or pull them off and cache them locally? Both have storage implications.
Leave the emails on the server, and you make the email server responsible for your email storage. That’s fine, it was designed to do that. However, your node has to do more work maintaining sync, which could be tricky, but does make email chain tracking much easier.
Pull the emails to the Node, and you keep an empty inbox, but now you can only see your emails on your Node. This might not be good for business things.
Once more, keep or take might have to be user-defined on a per-inbox basis. One Shot Email Addresses should probably take by default.
If that’s not a headache, we also have to deal with sending emails. Just because my Node has hidden the email part under this abstraction, it still has to be email. There are two ways to send an email from Node.
- SMTP, where the inbox does the sending
- Local sending such as
sendmail()on PHP
Both have config issues for the user to deal with, as well as spam filtering and sender authorisation stuff. I imagine that this alone will cause a fair amount of faff for setup. A really good Node CMS will have to do a fair amount of hand-holding for less technical users.
Technical thoughts on PULLing data
Things like RSS operate on a pull model – you pull the latest copy when you want to see it. Do that too often, and you abuse the feature (and risk being blocked); do it too infrequently, and the RSS feed is stale.
All pull based API should be linked to a central pull controller of some kind. The pull controller, which will probably run on a cron job (time-triggered action), should have reasonable cache time settings. A TTL, if you will. The job of the pull controller will be to poll for updates and pull those updates in a respectful way.
Depending on the API and any settings customised per pull thin by the Node user, pulls will happen at different rates.
This creates a lag problem for your Node. Where do you put new items – on the second page because of the delay, or at the top because we just got it?
I suggest that the best compromise is to allow the Node user to choose between “add the Item to The Feed based on its published date” and “add to The Feed when the controller first finds it”. Depending on Node usage and how many incoming Items the Node user gets, one may be better than the other.
Implementation Thoughts: Modules all the way down
I don’t think one big monolith is the way to implement Node.
I foresee it being a framework with each possible one of The Sources are seperate modules. That way, you only install what you need.
If a motivated enough geek wants to add their particular thing to Node and they have the skills, they can write one, share it, and we all get a richer Node experience.
Most, if not all, of the features (including email) should, I would suggest, be a module.
Implementation Thoughts: Facebook and the like
There are a lot of people I interact with mostly on Facebook. I would love for a premade “Facebook App” that Node can deploy that gives its users a direct Facebook account connection. Something that could manage the timeline and extend the idea of syndicating stuff a little further.
I guess (without checking) that some other social media platforms might be – with enough technical know-how – open to similar extension.
Or not. Experts, please enlighten us.
Implementation Thoughts: I don’t want WordPress
When WordPress is your hammer, everything starts to look like a nail. I do not think this Node idea is a WordPress-shaped problem. Sure, it has a few WordPress features and plugins that add more, but this feels like a specific enough need to demand its own ecosystem: One where the WordPress singular dictator can’t go mad again and ruin things.
The core of Node needs to do a lot of content management for the user. It needs access to email accounts, Mastodon accounts, and other sensitive stuff. It needs to be privacy first.
WordPress would bring a powerful blog, but at the cost of a lot of WordPress overhead and cruft. I’m imagining a more slimline and domain-specific framework where different source API or protocols can be their own first-class module.
I’ve nothing against a module that bridges the gap and uses WordPress as the blog-like public part. I just don’t want that as the default.
Implementation Thoughts: I like PHP, but I am not married to it
As a heavy PHP user, I love the idea of running my node on my PHP-based web hosting. But that does not have to be the only way this works.
For example, Node could be a thing that runs on your PC. Perhaps PHP-based is just what the web-facing thing does and is controlled by Node. The website is a thin interface for web-based stuff, but working at the behest of a more powerful (and private) local instance. There could even be different flavours of web-facing to suit different users.
In which case, the web-facing part just needs to implement an interface (an API) that Node can command.
Implementation Thoughts: Database vs Files
While writing this, I’ve been thinking a lot about storage. Some of The Content is transient and eventually gets moved to the recycle bin to await final deletion. Others – like content the Node user writes – will probably hang about for ages.
Then there are things like the WebMention pings, ActivityPub throughput, RSS feeds, and comments that sit in the “it depends” section.
Databases are good for things that should be indexed and require powerful search and find. While files are good when you know exactly what you need and can just grab it. This is why WordPress runs with a MySQL database, and Obsidian.md uses text files.
Email, for example, is essentially stored as a file. If we are being picky, the database is also just a file. Hmm… I’m getting off topic.
I think there is a case to be made for a mixed approach. Inbound WebMentions are probably best stored in a database, but are the blog-like posts themselves?
My instincts are for file-based The Content, where each Item is a separate file with a header for reply routing and a body for showing to you. Your private side of your Node does not have a huge concurrency issue – there is just you.
Another factor is cost. On the whole, files are cheaper than databases and are best for low-access storage of lots of stuff. You will generally just look at a single page of items, and can fetch the next page on a second request. You are not searching, you are simply browsing a folder, really.
If Items are files, groups are folders.
The public-facing content might (only maybe) benefit from a more write-once and read lots with indexed lookup. (A database).
I’m a fan of databases that stay under 2Gb and image-based media in The Content could clog that up fast.
I like the idea of being able to make edits via FTP or through my file browser. The same is true for backing stuff up. Not to mention, file permissions give you pretty solid read and write access control with any competent OS.
File locking exists, but yes, I know row and table locking also exist. I’m just saying that if you run lots of background tasks, whoever gets the file lock first has the file. Now that I come to write that, it is not the slam-dunk I thought it was just a minute ago.
Sidebar: You can’t have a table crash or get corrupted if you don’t have a table to start with. Yes, I know that is a weak argument. Bite me.
As for note-taking, file all the way. Ideally, MD stuff that is compatible with Obsidian.md for cross-portability.
Feel free to disagree with me on this whole section or part thereof.
Well, that’s the Node thing I dream of – what do you think?
What I am saying is that I want to merge Social Media, Blogging, and eMail. Merge it in a very specific way.
What? A geek can dream, right?
- What do you think? How hard would it be to get a project like this started?
- Would you use Node?
- Are you able to come up with a better name than Node?
- Do you hate email as much as I do?
- Am I just a crazy man with a blog? (Well, yes)
Feel free to agree, disagree, find fault, offer ideas, or whatever you have to say.
Glossary: Defining some terms
Bayesian filter
A spam classification technology that takes all the text in a thing, like a comment or an item, and adjusts the weights of each word to determine if the thing is or is not an example of that thing.
While not the cutting edge of spam filtering any more, it should be more than up to the job of classifying Node Items without resorting to expensive and privacy-leaking AI.
- https://en.wikipedia.org/wiki/Bayesian_statistics
- https://www.sciencedirect.com/topics/engineering/bayesian-filtering
- https://www.threatdown.com/blog/explained-bayesian-spam-filtering/
Mastodon/ActivityPub
Mastodon is a distributed open-source social network that has grown in popularity as a nicer alternative to Twitter. Even though Mastodon runs on lots of servers, they all talk to each other using ActivityPub, as do a few other oscila media things. An account on one gives you access to (almost) all the others.
- https://joinmastodon.org/
- https://joinpeertube.org/
- https://indieweb.org/ActivityPub
- https://www.w3.org/TR/activitypub/
- https://wordpress.org/plugins/activitypub/
- https://mastodon.isbrill.com/
- https://activitypub.isbrill.com/
RSS
RSS is a technology that used to be popular for syndicating content from one place to another. RSS is often used to subscribe to a blog in a way that allows you to pull the content when you want to see it.
I have a thing set up to run FreshRSS (link in the list below), but it looks too much like email; I did not get on with it.
- https://indieweb.org/RSS
- https://en.wikipedia.org/wiki/RSS
- https://freshrss.org
- https://github.com/tontof/kriss_feed
WebMention
WebMention is a ping-based idea where you mention (link to a page) and then ping the page to say, “here’s my comment”. It allows commenting on a thing from your own publishing space. WebMention is likely to be a core Node technology.
- https://en.wikipedia.org/wiki/Webmention
- https://www.w3.org/TR/webmention/
- https://indieweb.org/Webmention
- https://webmention.isbrill.com/
- https://wordpress.org/plugins/webmention/
-
I'm wondering if I might find a bunch of people here who scratch-build their webmention implementations... would be great to send test messages around and find out what works and what needs work...
Please look me up at https://khleedril.org/blog/2026-05-29--webmentions-posse.html
I look forward to hearing from you.
-
I'm wondering if I might find a bunch of people here who scratch-build their webmention implementations... would be great to send test messages around and find out what works and what needs work...
Please look me up at https://khleedril.org/blog/2026-05-29--webmentions-posse.html
I look forward to hearing from you.
-
静的サイトをwebmentionに対応させるガイド #webmention
Adding Webmention support my Astro site: https://frasermclean.com/posts/webmentions-comments-and-likes
-
静的サイトをwebmentionに対応させるガイド #webmention
Adding Webmention support my Astro site: https://frasermclean.com/posts/webmentions-comments-and-likes
-
Dear WebMention users, please ask more open-ended questions
I love using WebMention, but I find so few posts that I feel I can reply to. I am desperately hungry for WebMention content that asks open-ended questions I can reply to.
I follow the Open Mentions WebMention topic closely (I follow them all because I made it), so ping something there or WebMention this post if your site is rich with fun stuff I can respond to.
-
Dear WebMention users, please ask more open-ended questions
I love using WebMention, but I find so few posts that I feel I can reply to. I am desperately hungry for WebMention content that asks open-ended questions I can reply to.
I follow the Open Mentions WebMention topic closely (I follow them all because I made it), so ping something there or WebMention this post if your site is rich with fun stuff I can respond to.
-
Does anyone know what service is running on `49.13.198.96`?
Somehow it is sending me WebMentions "from" my own site.
I can't see anything obvious about it. I don't think it is malicious, I'm just a bit confused about what's doing it.
-
Does anyone know what service is running on `49.13.198.96`?
Somehow it is sending me WebMentions "from" my own site.
I can't see anything obvious about it. I don't think it is malicious, I'm just a bit confused about what's doing it.
-
I made a community WebMention thing
I created the website OpenMentions so there would be a collection of topics you could freely mention to tell other people you wrote something about a topic they are interested in. Anyone can use it.
OpenMentions has been around for a while, but I thought I’d bring it up again to get the word out.
-
I made a community WebMention thing
I created the website OpenMentions so there would be a collection of topics you could freely mention to tell other people you wrote something about a topic they are interested in. Anyone can use it.
OpenMentions has been around for a while, but I thought I’d bring it up again to get the word out.
-
✍️ New post: Buckle Up
I recently added a “Failed Webmentions” view to my Craft CMS #Webmention plugin. Opened it before #IndieWebCamp Düsseldorf and found line after line of automated probing. Just shipped v1.3.0 to deal with it and wrote a bit about it:
-
✍️ New post: Buckle Up
I recently added a “Failed Webmentions” view to my Craft CMS #Webmention plugin. Opened it before #IndieWebCamp Düsseldorf and found line after line of automated probing. Just shipped v1.3.0 to deal with it and wrote a bit about it:
-
#Webmention for Craft v1.3.0 is out 🎉 – first in a short series of #security releases. 🔒
Fixes a stored XSS vulnerability in author/entry URLs, adds per-IP rate limits, and failure-backoff to harden the public endpoint against abuse.
Upgrade recommended!
https://github.com/matthiasott/webmention/releases/tag/v1.3.0
-
#Webmention for Craft v1.3.0 is out 🎉 – first in a short series of #security releases. 🔒
Fixes a stored XSS vulnerability in author/entry URLs, adds per-IP rate limits, and failure-backoff to harden the public endpoint against abuse.
Upgrade recommended!
https://github.com/matthiasott/webmention/releases/tag/v1.3.0
-
#BurgeonLab #WeekNotes 025 is out (not as late as last week)!
2026: Week 17/52 (Apr 20 – Apr 26)➡️ https://burgeonlab.com/weeknotes/2026/w17/
Some site updates, adding a #webmention digest section, streamlined link roundup creation and a sneak peek at my remote #indiewebcamp participation!
This is post 35 of #100DaysToOffload
📈 https://burgeonlab.com/tags/100daystooffload/#blogging #blogs #smallweb #indieweb #weeknote #personalBlog #weeklynote #linkdump #blog #indieweb #frontenddevelopment #frontend
-
#BurgeonLab #WeekNotes 025 is out (not as late as last week)!
2026: Week 17/52 (Apr 20 – Apr 26)➡️ https://burgeonlab.com/weeknotes/2026/w17/
Some site updates, adding a #webmention digest section, streamlined link roundup creation and a sneak peek at my remote #indiewebcamp participation!
This is post 35 of #100DaysToOffload
📈 https://burgeonlab.com/tags/100daystooffload/#blogging #blogs #smallweb #indieweb #weeknote #personalBlog #weeklynote #linkdump #blog #indieweb #frontenddevelopment #frontend
-
RE: https://social.anoxinon.de/@onli/116381126456067446
Huh, release notes suggest #Webmention feature availability in Serendipity 2.6.0 🤩
-
RE: https://social.anoxinon.de/@onli/116381126456067446
Huh, release notes suggest #Webmention feature availability in Serendipity 2.6.0 🤩
-
CVE Alert: CVE-2026-0686 - pfefferle - Webmention - https://www.redpacketsecurity.com/cve-alert-cve-2026-0686-pfefferle-webmention/
#OSINT #ThreatIntel #CyberSecurity #cve-2026-0686 #pfefferle #webmention
-
CVE Alert: CVE-2026-0686 - pfefferle - Webmention - https://www.redpacketsecurity.com/cve-alert-cve-2026-0686-pfefferle-webmention/
#OSINT #ThreatIntel #CyberSecurity #cve-2026-0686 #pfefferle #webmention
-
From an end-user perspective, it's annoying inbound #ActivityPub functionality in #WordPress requires a separate #Webmention plugin rather than being built into the ActivityPub plug-in.
This makes sense from a _protocol_ point of view, since full-fledged ActivityPub servers can function entirely without sending each other Webmentions, but it really doesn't make sense from a user experience point of view. -
From an end-user perspective, it's annoying inbound #ActivityPub functionality in #WordPress requires a separate #Webmention plugin rather than being built into the ActivityPub plug-in.
This makes sense from a _protocol_ point of view, since full-fledged ActivityPub servers can function entirely without sending each other Webmentions, but it really doesn't make sense from a user experience point of view. -
I just went down this rabbithole:
Me: "Why aren't fediverse replies showing up as comments on my #WordPress blog postings?"
Me: [searches all over, finds stuff about configuring this in the block editor, discovers that my theme does not support the block editor, spends hours trying to find a theme I can tolerate that supports the block editor, eventually realizes that actually the problem isn't the non-block theme, it's that I didn't have the #Webmention plug-in installed. *sigh*] -
I just went down this rabbithole:
Me: "Why aren't fediverse replies showing up as comments on my #WordPress blog postings?"
Me: [searches all over, finds stuff about configuring this in the block editor, discovers that my theme does not support the block editor, spends hours trying to find a theme I can tolerate that supports the block editor, eventually realizes that actually the problem isn't the non-block theme, it's that I didn't have the #Webmention plug-in installed. *sigh*] -
The Fun To Reply To Tipline
I’m looking for fun posts to reply to that I can feature here. Ideally, WebMention-enabled or ActivityPub-ready, but anything that would be fun to leave a reply to counts.
Please reply, mention, or comment with your suggestions (yes, your own stuff counts).
#ActivityPub #WebMention -
The Fun To Reply To Tipline
I’m looking for fun posts to reply to that I can feature here. Ideally, WebMention-enabled or ActivityPub-ready, but anything that would be fun to leave a reply to counts.
Please reply, mention, or comment with your suggestions (yes, your own stuff counts).
#ActivityPub #WebMention -
Does it matter?
(This post is being modified) -
Just published a small enhancement and bugfix release for the #Webmention for #Craft CMS plugin.
It adds two important details though: lazy loading and alt text support for avatar images. 😎https://github.com/matthiasott/webmention/releases/tag/v1.0.5
-
Just published a small enhancement and bugfix release for the #Webmention for #Craft CMS plugin.
It adds two important details though: lazy loading and alt text support for avatar images. 😎https://github.com/matthiasott/webmention/releases/tag/v1.0.5
-
-
Curtiu o post de Daniel Quirino. #webmention
https://deniac.com/2026/01/31/todos-deveriamos-blogar-mais-e-nos-conectar-mais-com-estranhos/