webmention.io
This article is a stub. You can help the IndieWeb wiki by expanding it.
webmention.io is an open-source project and hosted service for receiving webmentions on behalf of your indieweb site.
IndieWeb Examples
Sites currently using webmention.io to receive pingbacks and/or Webmentions on their behalf:
- Tiago Rangel on tiagorangel.com
- aaronparecki.com
- oliodigest.com
- indiewebcat.com
- bret.io
- martin.baillie.id
- indieweb.org (this site)
- oauth.net
- tantek.com
- eddiehinkle.com
- tedt.org
- Marty McGuire on his site at martymcgui.re and podcast at wehavetoask.com
- jacky.wtf
- beesbuzz.biz
- www.calmabiding.me
- daniel.priv.no
- wouterdeschuyter.be
- Jamie Tanna
- Maxwell Joslyn
- Ru Singh
- yousefamar.com
- Henrique Dias
- jeremysarber.com
- Simone Silvestroni (m2m)
- Rosalina Saige at catgirlin.space
- Anthony Ciccarello on ciccarello.me since 2022-09-07
- -fab- at redterminal.org
- Add yourself here⦠(see this for more details)
Features
Accept webmentions for any site by adding an html tag
<link rel="webmention" href="https://webmention.io/example.com/webmention" />
API to get a list of sites linking to your pages
Example: https://webmention.io/api/links.jf2?target=http%3A%2F%2Fwebmention.io
Sends Notification of Valid Webmentions via Web Hook
You can have webmention.io send an HTTP notification for each received, valid webmention to a URL of your choice. You may specify a different endpoint for each domain.
Optionally, you can configure a "callback secret" so that your HTTP endpoint can verify that the notification was sent by webmention.io.
How to Use
If you want to use this right now, you can sign in on the home page https://webmention.io
Or you can install this on your own server from the source code on Github.
Use with Jekyll
Aaron Gustafson has written a Jekyll plugin for displaying content from webmention.io.
Using with other static site generators
- Marty McGuire's Morris (self-hosted) can be used to store webmention data in json format, and then parsed if the static site generator supports data files.
Notification Web Hooks
- Marty McGuire has written a Hubot script to relay notifications to chat rooms. (source, announcement)
Display with javascript
Bret Comnes has written webmention.js. Note it indicates that it "needs some work" and may not be actively maintained currently (last commit 2015-03-17).
fluffy has written a library that is also imaginatively named webmention.js.
θ+85CD has written Seia, a Web Component.
What does Webmention.io do?
- Webmention receiving verification
- does the source page actually link to the target page?)
- Microformats parsing
- parse the Microformats at the source URL
- Response interpretation
- Convert the parsed Microformats to a normalized response object (like, reply, etc)
- Storage of responses
- Retrieval API for responses
- a JSON API for retrieving responses by domain name or individual URL
Wish List
- A tiny, no-dependencies js file which can fetch comment data from webmention.io and dump it into an element, enabling 2-step comment support:
- Add a <link> to webmention.io
- include this script and add some
<div data-indiecomments data-url="blah">
element where you want them to appear - see https://github.com/aaronpk/webmention.io/issues/104
Developing
The source is at github.com/aaronpk/webmention.io
To get set up, clone the repo, run bundle install
in the repo dir, then run ./start.sh
.
See Also
- Simple thing for embedding webmentions from webmention.io into a page, client-side. by fluffy
- mention-tech
- micro.blog has a webmention service similar to webmention.io https://micro.blog/webmention