Nathan Knowler



This website is now Webmentionable! Learn more about webmentions. This took a very long time and I’m not done—there’s much to polish and to expand. The major reason this took so long is because I am stubborn and I didn’t want to use an off-the-shelf solution. Another reason is because I overthink a lot, in fact as I write this, all I’m thinking about is what is currently wrong with my implementation.

Something outside of my control was that for a long time Deno Deploy didn’t have a first-party way to persist data or asynchronously handle tasks. This was solved when they released their KV database and more recently when they introduced their Queues which builds on KV.

Some priorities post-launch:

  • Improve the UI of the form.
  • Improve the error messaging of the REST API.

Some ideas for the future:

  • Differentiate the types of webmentions (e.g. reposts, likes, my own syndicated posts).
  • Send webmentions when I post new content.
  • Allow webmentions for non-posts.


I’d like to acknowledge the Begin/Enhance crew’s Enhance Blog Template which I definitely used as inspiration for my own implementation of webmentions (I may have even copied some code). They’re doing some great stuff with Enhance. I’d probably be using it if I was less stubborn and I didn’t like Pug so much.