A basic starter template for Eleventy blogs, with added support for webmentions.
Branch: master
Clone or download
Pull request Compare This branch is 16 commits ahead, 5 commits behind 11ty:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
_11ty Using deep data merge (post tag is inherited from posts/posts.json) a… Jan 11, 2019
_data get domain name from metadata Jan 17, 2019
about Upgrades to 0.4.0 and adds tag pages Jun 21, 2018
css add basic styling Jan 17, 2019
feed Add sitemap.xml Sep 24, 2018
posts Using deep data merge (post tag is inherited from posts/posts.json) a… Jan 11, 2019
.eleventyignore Adds a /tags/ to list all valid tags Aug 29, 2018
.nvmrc Adds an .nvmrc for netlify deploys. Jan 25, 2018
index.njk Fix href on github pages Sep 30, 2018
package.json add wm filters Jan 17, 2019



A basic starter template for Eleventy blogs with added support for webmentions.
For more information about this, read Static Indieweb: Using Webmentions.

Example of Webmention Section


Run npm install after cloning this repository. The available commands are identical to eleventy-base-blog.

Enable Webmentions

Follow these steps to get it working:

  1. Go to https://webmention.io/ and sign in. To authenticate, you will have to include a <a rel="me"> link at your domain, pointing to your github or twitter user URL:

<a href="https://github.com/maxboeck" rel="me">Max on Github</a>

  1. Once you've verified domain ownership, go to the settings page. Copy the token listed under "API Key" there.

  2. Paste the token into the .env.sample file, then delete the .sample from the filename.

  3. Check the information in _data/metadata.json and make sure your domain name is correct. It should look like example.com.

  4. Run Eleventy. It will try to fetch the webmentions for your domain (you may not yet have any, check your webmentions.io dashboard). After the first use, a cached json file will be created so you don't have to re-fetch that data everytime eleventy regenerates the site in development.


This starter includes just the basic functionality, feel free to make it your own.
The relevant parts are:

  • Templates: _includes/webmentionlist.njk and _includes/webmention.njk
  • Filter: webmentionsForUrl in .eleventy.js
  • Data Fetching: _data/webmentions.js
  • Basic Styling: css/webmentions.css