POSSE icon
POSSE is an abbreviation for Publish (on your) Own Site, Syndicate Elsewhere, the practice of posting content on your own site first, then publishing copies or sharing links to third parties (like social media silos) with original post links to provide viewers a path to directly interacting with your content.
▶️ watch Zach’s 1min* video intro to POSSE
Let your friends read your posts, their way. POSSE lets your friends keep using whatever they use to read your stuff (e.g. social media silos like Instagram, Tumblr, Twitter, Neocities, etc.).
Stay in touch with friends now, not some theoretical future. POSSE is about staying in touch with current friends now, rather than the potential of staying in touch with friends in the future.
Friends are more important than federation. By focusing on relationships that matter to people rather than architectural ideals, from a human perspective, POSSE is more important than federation. Additionally, if federated approaches take a POSSE approach first, they will likely get better adoption (everyone wants to stay in touch with their friends), and thereby more rapidly approach that federated future.
POSSE is beyond blogging. It’s a key part of why and how the IndieWeb movement is different from just “everyone blog on their own site”, and also different from “everyone just install and run (YourFavoriteSocialSoftware)” etc. monoculture solutions.
POSSE is considered a robust and preferable syndication model for the following reasons:
Common POSSE practice is to link from POSSE copies to your original, using a permashortlink. Here are a few reasons why:
This section is for web developers implementing POSSE.
In general, when your content posting software posts something, it should also post a copy to the silo destinations of your choice, with an original post link (e.g. permashortlink or permashortcitation) back to your original.
The details of how to do so vary per destination. See the silo-specific sections below.
Once you have posted the copy to the silo, you should:
The best user interface (UI) is automatic, dependable, and invisible. If you can implement POSSEing in a way that always does exactly what you want, predictably, then no explicit UI is needed.
One way to provide more predictability and inspire confidence is to show what will be POSSEd (within the limitations of the destination) as a preview before publishing
(needs screenshot)
Twitter is perhaps the most popular POSSE destination and a good place to start.
If you can start posting notes (tweets) to your own site and POSSEing to Twitter, instead of posting directly to Twitter, you have taken a big step towards owning your data.
Details:
See POSSE to Twitter for details on how to POSSE both notes and articles (blog posts) to Twitter.
There are two options for POSSEing to Facebook currently:
Chris Aldrich uses a WordPress plugin WordPress Crosspost to POSSE from a self-hosted WordPress install to WordPress.com.Some destinations (e.g. SMS or push notifications) may require a pure plain text representation.
Software and libraries to implement POSSE:
There’s at least two ways to implement a POSSE content posting flow:
Advantages:
Disadvantages:
Advantages:
Disadvantages:
The following IndieWebCamp participants’ sites support a POSSE architecture. If you have an implementation, add it, make screenshots or a screencast or blog about it and post the details/link here. In date order (earliest first) :
Tantek.com as of 2010-01-01[1] (2010-01-26 Twitter syndication started[2] and caught up[3][4]). Tantek Çelik implemented POSSE in Falcon on tantek.com.
Waterpigs.co.uk as of 2012-03-12. Barnaby Walters implemented POSSE over at waterpigs.co.uk
brennannovak.com as of 2012-07-01[5][6]. Brennan Novak implemented POSSE on his site brennannovak.com with copies posted to Twitter and Facebook
aaronparecki.com as of 2012-08-19[7][8]. Aaron Parecki implemented POSSE on his site aaronparecki.com with copies posted to Twitter containing permashortlinks back to originals on his own site.
User:Sandeep.io First post POSSE’d on 2012-11-05. I primarily syndicate to Twitter using a very lo-fi solution of adding silo (Facebook, Twiiter, Google+) provided share links to each post that I can manually click to prefill content, edit and post. I’ve avoided API integration because of the extensive experience I’ve had using Facebook API and dealing with it’s random changes. “Integration” has high costs sometimes so I keep it as simple as possible.
werd.io as of 2013-05-31 [9]. Ben Werdmuller implemented POSSE in his idno platform via plugins. New content has an associated Activity Streams object type; POSSE plugins listen for post events associated with those object types and syndicate appropriately.
glennjones.net as of 2014-01-14 Glenn Jones The blog implemented POSSE using a new version of transmat.io system. New content added to transmat is associated with objects types. A POSSE twitter plugins listens for post events syndicating content. At moment only notes are syndicated.
adactio.com as of 2014-05-27 Jeremy Keith has implemented POSSE using his own custom CMS.
shanehudson.net as of 2014-09-19 Shane Hudson has implemented POSSE to Twitter for Craft CMS.
http://www.ravisagar.in/blog/implementing-posse-my-site Implementing POSSE on my site as of 2018-02-21.
ludovic.chabant.com as of 2018-07-30 Ludovic Chabant has implement POSSE to Twitter and Mastodon from PieCrust CMS, using SiloRider
adamdawkins.uk as of 2019-01-16 Adam Dawkins has implemented POSSE using his own custom CMS.
shaun.net as of 2020-01-16 Shaun Ewing has implemented POSSE using Jekyll, and custom APIs.
Back on my blog, I started a rolling list of WebMention blogs. I’ve not maintained that series, but this list started from that blog post series. I’ve marked a few in bold – these are specifically general-purpose conversation starters and topic ideas.

I’m open to suggested additions, title corrections, ideas, and anything else related you might want to share. Comments, suggestions, praise, and other feedback by WebMention or ActivityPub only.
I will periodically review this list. Sites that seem inactive, I will prune, while new sites I find will be added. To talk about this list, there is a meta page.
This page had some problems (repeating pings). I hope I’ve stopped it now.
Back on my blog, I started a rolling list of WebMention blogs. I’ve not maintained that series, but this list started from that blog post series. I’ve marked a few in bold – these are specifically general-purpose conversation starters and topic ideas.

I’m open to suggested additions, title corrections, ideas, and anything else related you might want to share. Comments, suggestions, praise, and other feedback by WebMention or ActivityPub only.
I will periodically review this list. Sites that seem inactive, I will prune, while new sites I find will be added. To talk about this list, there is a meta page.
This page had some problems (repeating pings). I hope I’ve stopped it now.
Back on my blog, I started a rolling list of WebMention blogs. I’ve not maintained that series, but this list started from that blog post series. I’ve marked a few in bold – these are specifically general-purpose conversation starters and topic ideas.

I’m open to suggested additions, title corrections, ideas, and anything else related you might want to share. Comments, suggestions, praise, and other feedback by WebMention or ActivityPub only.
I will periodically review this list. Sites that seem inactive, I will prune, while new sites I find will be added. To talk about this list, there is a meta page.
Back on my blog, I started a rolling list of WebMention blogs. I’ve not maintained that series, but this list started from that blog post series. I’ve marked a few in bold – these are specifically general-purpose conversation starters and topic ideas.

I’m open to suggested additions, title corrections, ideas, and anything else related you might want to share. Comments, suggestions, praise, and other feedback by WebMention or ActivityPub only.
I will periodically review this list. Sites that seem inactive, I will prune, while new sites I find will be added. To talk about this list, there will be a meta page added very soon.
In reply to: New-new Reddit
I have no idea about the CPU usage but the new post/comment editor is also abysmal. I just want to write Markdown, dangit! But even when it’s in Markdown mode it tries to apply some fancy formatting to things, and gets it wrong.
I really hate how every website now “needs” to be an “app.”
https://waterpigs.co.uk/articles/chien/
Chien(うなり駒)自作のすすめ
3Dプリンタで作る人いないんでしょうか。
いた ← Facebook の記事は消えてしまいますね。
3Dプリンタによる chien: こういうのがあります。
I always find it interesting, when people ascribe the social expectations to the technology. Even if there is nothing in technology, that would force it that. In the last week, I have read two articles about the webmentions, that had this phenomena.
The first was Matt's article of how webmentions have spam and privacy problem. That webmentions allow other people to post content on the site. So it need to involve the moderation. The second one was from Robert, where he writes how webmentions make you display the social media like posts on your site.
What I find even more interesting is, that Robert solution ended up being very similar to how I am using webmentions. And the only reason we went a different route technologically is, because of a single preposition.
Webmentions are always displayed on the receiving site.
They don't need to be? Sure, they can be, and displaying comments in the example used in the spec introduction. Plus, a lot of people use them in this way. But there is nothing in the technology, that they need to be used this way.
Technology-wise, all webmentions do is send a message of 'I linked to your page'. There is nothing in technology to say that you need to do anything with this - either displaying or checking it.
I can imagine a use case, where people would implement webmentions just for gathering statistics of which of their posts are popular. So they would just collect them and count them by post or something.
Which also goes against another assumption:
Webmentions are always comments / social media-type reactions.
I think we in the IndieWeb are a bit responsible for this. We are using them a lot of comments, likes, bookmarks and similar. Outside of that we used them for RSVPs and for aggregating content on the planets.
Maybe as a community we need more examples. More games like tic-tac-toe James, Sven and Barnaby played in Berlin. At least as far as I remember, it had been some time ago.
I guess the tagging game suggested by Tantek in the last Europe Online Homebrew Club could also be like that. Though for me is it social media type, since I associate it with Tumblr.
I really wish there would be another non-social media and not comment like example of webmentions use, but I can not remember any from the top of my mind.
I have occasionally being paying around with the idea of doing a story game through posting and webmentions. Though I always stop before figuring out, how we could do this. Something like Crossroads story game could solve most of the problems, since the only role of the game master is to set the tasks at the start and decide, if what people are doing is reasonable. And it is created in a way, that it would not matter if somebody joined late or not participate in a 'round'. Though the fun is in using elements from each other stories. And I am not sure how this could be done without stories contradicting each other.
When I was checking things for this article, I found that Martijn had also though about the same usecase. Since I only have experience with the offline playing of these games, it was interesting reading a bit of a different perspective on this.
I am wondering, are there any other webmentions uses that I am missing? They can be just potential use cases.
I have a itch to just use this as the tagging game to put the yesterday's idea into action. The question would probably be: 'What are other used or potential usecases of webmentions you are exited about?'. Probably better to leave it for something, that is and easier and quicker to answer, until people get used to it. :)
Also published on Indienews
I always find it interesting, when people ascribe the social expectations to the technology. Even if there is nothing in technology, that would force it that. In the last week, I have read two articles about the webmentions, that had this phenomena.
The first was Matt's article of how webmentions have spam and privacy problem. That webmentions allow other people to post content on the site. So it need to involve the moderation. The second one was from Robert, where he writes how webmentions make you display the social media like posts on your site.
What I find even more interesting is, that Robert solution ended up being very similar to how I am using webmentions. And the only reason we went a different route technologically is, because of a single preposition.
Webmentions are always displayed on the receiving site.
They don't need to be? Sure, they can be, and displaying comments in the example used in the spec introduction. Plus, a lot of people use them in this way. But there is nothing in the technology, that they need to be used this way.
Technology-wise, all webmentions do is send a message of 'I linked to your page'. There is nothing in technology to say that you need to do anything with this - either displaying or checking it.
I can imagine a use case, where people would implement webmentions just for gathering statistics of which of their posts are popular. So they would just collect them and count them by post or something.
Which also goes against another assumption:
Webmentions are always comments / social media-type reactions.
I think we in the IndieWeb are a bit responsible for this. We are using them a lot of comments, likes, bookmarks and similar. Outside of that we used them for RSVPs and for aggregating content on the planets.
Maybe as a community we need more examples. More games like tic-tac-toe James, Sven and Barnaby played in Berlin. At least as far as I remember, it had been some time ago.
I guess the tagging game suggested by Tantek in the last Europe Online Homebrew Club could also be like that. Though for me is it social media type, since I associate it with Tumblr.
I really wish there would be another non-social media and not comment like example of webmentions use, but I can not remember any from the top of my mind.
I have occasionally being paying around with the idea of doing a story game through posting and webmentions. Though I always stop before figuring out, how we could do this. Something like Crossroads story game could solve most of the problems, since the only role of the game master is to set the tasks at the start and decide, if what people are doing is reasonable. And it is created in a way, that it would not matter if somebody joined late or not participate in a 'round'. Though the fun is in using elements from each other stories. And I am not sure how this could be done without stories contradicting each other.
When I was checking things for this article, I found that Martijn had also though about the same usecase. Since I only have experience with the offline playing of these games, it was interesting reading a bit of a different perspective on this.
I am wondering, are there any other webmentions uses that I am missing? They can be just potential use cases.
I have a itch to just use this as the tagging game to put the yesterday's idea into action. The question would probably be: 'What are other used or potential usecases of webmentions you are exited about?'. Probably better to leave it for something, that is and easier and quicker to answer, until people get used to it. :)
Also published on Indienews
The collapse of Twitter last year got me thinking about closed platforms and reducing the hold that privately owned platforms have over the Internet.
I’ve been blogging for nine years now on my personal website. I like owning my own domain as it allows me to retain control and stay independent of particular services. Private platforms have a tendency to be bought out and/or ruined by commercial interests, especially now with tech growth slowing down and investors getting uneasy.
However, there are some benefits to closed blogging platforms. Medium provides a network effect that small blogs don’t have. It has an algorithm that promotes posts that users may find interesting. This allows the blogs to organically gain new readers. Additionally, Medium makes it super easy to like, comment, and reply to a post, resulting in a platform that feels a lot more like a social network than your standard cloud blogging service.
Last year, I started looking into ways independent blogs could communicate, just like on Medium. I considered making my blog ActivityPub-compatible, as that would allow users on Mastodon and the Fediverse to like, share, and comment on articles. And then, I stumbled upon the IndieWeb.
IndieWeb.org describes the IndieWeb as:
— IndieWeb.orgThe IndieWeb is a community of independent & personal websites connected by simple standards, based on the principles of: owning your domain & using it as your primary identity, publishing on your own site (optionally syndicating elsewhere), and owning your data.
To phrase it another way, IndieWeb is about posting the things you make on your personal website and domain, to keep control of your data and stay independent from private platforms (aka silos). You may still post to silos but you should post to your personal website first.
IndieWeb isn’t just about blogging. You might post Twitter-like microposts, photos, location check-ins, reviews, replies to other sites, and more.
An important concept is “Publish on your Own Site; Syndicate Elsewhere” (POSSE). This means that you should post the original version on your own website and then share links or copies of your content with relevant social media communities. This is simpler and more flexible than adding ActivityPub support to my blog, and is so obvious that I’ve already been doing it without realising it.
You may be thinking that POSSE is pretty obvious and a bit of a cop-out. But where POSSE truly shines is when combined with backfeeding. A Backfeed is a list of replies, likes, and mentions for the current page. Combined with POSSE, this allows you to see replies to the current page across all different private silos. For example, you might see comments from Mastodon and Reddit at the bottom of a blog post, as well as replies from other IndieWeb websites.
Together, POSSE and backfeeding strike a good compromise between owning your own presence and participating in silos. They improve discoverability and allow for reader interaction.
The IndieWeb community has authored several standards that allow IndieWeb websites to communicate.
Webmentions allow websites to be notified when another site links to them. By receiving a notification, a site can know about replies and mentions without having to maintain impractical web crawlers or subscribe to a backlinking service.
I started by
implementing support for
receiving Webmentions. This was super easy, I just needed to add a couple of
link tags to the top of all pages:
<link rel="webmention" href="https://webmention.io/example.com/webmention">
<link rel="pingback" href="https://webmention.io/example.com/xmlrpc">
WebMention.io is a cloud service for receiving Webmentions. You might think it’s odd to use a cloud service for this, but it’s not a problem as I’m still using my own domain for the pages and could switch the Webmentions service at any time. IndieWeb isn’t about self-hosting, it’s about owning your identity and data.
I currently send Webmentions manually using Telegraph or IndieWebify.
My blog is statically hosted and is built using GitLab CI. As the site is only published when CI finishes, it would be impossible to include sending web mentions as part of the same CI pipeline. In the future, I’ll probably look into using Brid.gy or some other tool to send Webmentions by monitoring my web feeds.
Personal websites can contain a variety of content. Long-form articles, Twitter-like notes, location check-ins, reviews, and replies. Microformats2 is a way of marking up the content of web pages so that machines can understand it better. This is a powerful thing when combined with Webmentions as it allows the receiving website to understand what is linking to it and why.
Microformats2 works by adding classes to elements representing content:
<article class="h-entry">
<h2 class="p-name">Hello world!</h2>
<a href="/tags/a-tag/" class="p-category">
A tag
</a>
<div class="e-content">
This is the article's content.
</div>
</article>
Implementing support for Microformats2 (mf2) was a huge pain, I cannot overstate how much so. The documentation was very fragmented and inconsistent, and the tools I found to test mf2 didn’t match the documentation.
The most extreme problem I had was with authorship - authorship is how you find out who is the author of a piece of content. The documentation says that you should be able to just include a link to the homepage in each piece of content, and tools should fetch the author info:
<article class="h-entry">
<div class="e-content">This is an example note</div>
<a href="https://rubenwardy.com" class="u-author"></a>
</article>
However, this did not work at all. Most of the tools I found didn’t make further requests and only looked at the current page. This makes sense I guess, but it’s annoying that the documentation said it was possible.
The next thing I looked at was including the authorship information in the footer of each page, and then referencing it from each piece of content like so:
<article class="h-entry">
<div class="e-content">This is an example note</div>
<a href="/" class="u-author"></a>
</article>
<footer>
<a href="/" class="h-card">
<img class="u-photo" src="/me.jpg">
<span class="p-name">Author Name</span>
</a>
</footer>
Unfortunately, this didn’t work with any of the tools either. The only thing I found that worked was to include the authorship information in full in every single piece of content.
<article class="h-entry">
<div class="e-content">This is an example note</div>
<div class="p-author h-card d-none">
<a class="u-url p-name" href="https://rubenwardy.com/">rubenwardy</a>
<img class="u-photo" src="/me.jpg">
</div>
</article>
Thank you to users on the IndieWeb IRC channels for pointing towards useful tools and documentation, and asking my newbie questions. Without them, I wouldn’t have been able to implement support at all. I believe that they have improved the documentation a bit based on my feedback, although the authorship page still mentions the methods I tried that didn’t work.
The three main tools I used for testing Microformats2 were IndieWebify, pin13.net mf2, Waterpigs mf2.
A Backfeed is a list of replies, likes, and mentions for the current page. For example, you might see comments from Mastodon and Reddit at the bottom of a blog post, as well as replies from other IndieWeb websites.
My blog shows likes from Mastodon and other social platforms using Brid.gy and Webmentions. When I post a link to my blog on social media, Brid.gy monitors activity and sends Webmentions. JavaScript on my blog fetches Webmentions and updates the counter. My blog also caches like counts at build time. In the future, I’ll make it so that the JS only fetches activity since the blog was last built, reducing the amount of work the Web Mentions API needs to do.
I decided not to implement the backfeeding of comments from social media as I’m concerned about the privacy implications. Just because someone decides to reply publicly on social media silos doesn’t mean that they want their post and their profile picture to appear on my website. Additionally, Webmentions can’t be deleted meaning that the comment may continue to appear on my website even after the author deletes it on the silo.
Two good articles discussing the ethics and privacy challenges of backfeeding include “The ethics of syndicating comments using WebMentions” and “The IndieWeb privacy challenge”.
I may reconsider this in the future. I’d need to make it sufficiently clear to commenters and allow them to opt-out. I’d also need to make sure that deleting the comment on the silo also deletes it from my website.
I added a comment form to the bottom of posts on my blog. My blog is statically hosted. To collect comments, I have a service running on another subdomain that collects any comments and sends them to me. Users can also choose to send comments by email or another method. All comments are moderated before showing on my blog.
To avoid spam, the comment form has a “username” form hidden using CSS. Most spam bots don’t bother applying the CSS so will see the field and fill it in. This is called a honeypot field and is surprisingly effective - I was receiving multiple spam comments a day, but since adding the field I’ve only received a single spam comment.
<style>
input[name="username"] {
display: none;
}
</style>
<input type="text" name="username">
You can find the source code behind commenting on GitLab.
IndieWeb standards are fairly obscure and don’t seem to have been adopted much yet. Of all the posts I’ve made since adding IndieWeb support, this is probably the only one that will actually find websites linked to that can receive Webmentions. If a popular Content Management System, like WordPress, added built-in support for Webmentions and mf2, I could see it suddenly becoming a lot more popular.
Whilst Webmentions are pretty cool, Microformats2 is pretty complicated and was pretty annoying to implement. I know that the IndieWeb crowd will have strong opinions on this, but I quite like how simple JSON-LD was to add support for and that it’s JSON.
As for the community side of IndieWeb, personal websites have seen a big resurgence since the fall of Twitter. I think we’re in a new golden age for RSS and personal websites. I’ve been encouraging a lot of my friends to take up blogging.
I’m certainly a more technical user than the average blogger. I don’t mind being an early adopter of technology and appreciate the goals of IndieWeb. I like how they try to focus on the people before the technology, even though Microformats2 leaves much to be desired.
I currently only post blog posts on my website. I don’t plan to post notes on my website as I prefer to use Mastodon directly. But I might start posting my photography here.
I’m undecided as to whether I’ll stick with IndieWeb technology in the long term, but I’ll certainly continue to own and publish on my own domain.