Skip to main content
A cartoon depiction of the author, wearing a hoodie and smiling


What is Postmarks? #

I'm finally sharing my project Postmarks, a single-user bookmarking website designed to be easily hosted on Glitch.

Postmarks aims to provide a few different functions. Those functions are:

  1. Tag-indexed bookmarking
  2. ActivityPub publishing (soon to be optional!)
  3. Simple commenting, also powered by ActivityPub (also optional)

It's inspired by a number of websites I've loved over the years, including, Google Reader, and Branch.

You can see a basic demo of the site at, or an example of an instance with a lot of bookmarks in it at

Tag-indexed bookmarking #

If you're at all familiar with or Pinboard, you should hopefully be comfortable with the basics of using Postmarks to store bookmarks. If you're not already familiar, the idea is to store a collection of URLs along with some associated, browsable data—a customizable page title; a "description" field for summaries, notes or excerpts; a list of category "tags"—for your own reference over time and/or to share with other people.

On the centralized bookmarking sites of yore, you'd create an account and exist along with a collection of other people, meaning there were some lightweight community features like seeing who else bookmarked a given URL, seeing a public feed of all bookmarks for a given tag, or even "following" users. The Postmarks site itself is made to operate for one user, but the goal is to make setting one up as easy as possible so a single person can set up many of them for different purposes or keep all their bookmarks in one place and use the tagging features to make different kinds of things easily browseable.

ActivityPub publishing #

Postmarks, by default, also publishes all new bookmarks via the ActivityPub protocol, which means that people on web applications like Mastodon can "follow" your site in their timelines and lists and see new posts as you make them. And in turn, you can follow other people—other Postmarks users, or users on Mastodon, FireFish, or other text-based ActivityPub applications—and the links they share will show up on your Network page, with an easy way to grab any link you see and bookmark it for yourself.

Simple commenting, also powered by ActivityPub #

Once we've got bookmark posts showing up in Mastodon, it would be a shame if we didn't take advantage of that, right? Postmarks listens for incoming replies to its posts and absorbs them as "comments", which by default are unpublished/only visible to the admin when editing a bookmark. Controls are available at the site-wide level, and on individual bookmarks, to both auto-publish comments and just ignore them entirely.

You own your instance #

Postmarks isn't as complicated a piece of software as Mastodon! At the very least, you should feel welcome and empowered to edit the CSS to set your own color scheme, fonts, and so forth. If you're feeling more adventurous, you can reshape the Handlebars templates entirely in the src/pages directory. Or fork the project entirely and write new features from scratch! I'd love to accept general improvements on the frontend experience especially; feel free to open issues or submit pull requests on the Github repo.

A work in progress #

I've got a whole future ideas document included in the default bookmarks for the site, but to summarize I'd like to make Postmarks a fully self-sufficient platform, supporting all of its own features without ever involving a Mastodon or other microblogging platform. I'd also like to find ways to increase the usability of the site while keeping it compact, lightweight, and able to run on a broad variety of hosting platforms. I'd also like to see support for other indie web concepts, whether that's Micropub, Webmentions, or anything else I can harness to make Postmarks really useful to the people who want it!

Acknowledgements #

Thank you to Darius, Mouse, Ben, Anil, Casey, and everyone else who has inspired me, advised me, or lent a hand to Postmarks. (The more complete version is in the project README!) It's been fun to learn all the things required to make this platform come into existence and I hope to keep improving it and sharing bookmarks for a long time to come.