ADAM DJ BRETT

Home / Blog / Announcing a new 11ty Shortlink and QR Code Generator purl.im

Ever since the originary essay, I have been firmly committed to the philosophy of A Domain of One's Own (DoOO) (see a previous post). Even before the concept came around, I had too many domain names and was encouraging others to have their own sites as well. One of the central problems with having your own site has been the walled gardens of social media. Getting people to leave the walled gardens of social media, stop scrolling, and read/watch/listen to human-crafted information remains a serious problem. Some ways around this have been "link in bio" and short links. The issues with these tools are that they tend to be yet another big tech walled garden. My friend Eileen Campbell-Reed, in her book Pastoral Imagination, used her own custom link shortener that I helped her set up. This link shortener has worked great for easily typeable URLs for readers of the book and has allowed her to stop link rot in the book by updating the short links whenever links change (big shout-out to the internet's best friend, archive.org). Link rot is sadly a problem that is not going away soon. As link shorteners like goo.gl are being phased out and authors move between web frameworks and Content management systems, these problems persist.

Working with Eileen helped me to see the ease of using a DoOO for your own shortlink system; likewise, working with activists and organizers has taught me the frustration and limits of services like TinyURL and Bit.ly, where the shortlinks get increasingly convoluted to type. These issues led me to search for a solution. I wanted to find a self-hosted shortlink and QR code solution that was lightweight, easy to use and deploy, and, of course, open source. Netlify provides a super simple way to shorten links; however, I also wanted to be able to automatically generate QR codes for the shortlinks because if I need one, I will need the other. After asking around on Mastodon and Discord, I found two outstanding projects that I combined to make this project.  By the powers of 1y and findth.At, I give you Frankenstein's Monster. The goal of this project was two-fold: first, to see if I could combine two of my favorite open-source projects into one, and second, to create a useful link shortener and QR code generator for my colleagues and me to use---my deepest gratitude and apologies to everyone involved. @Nhoizey and @philhawksworth, you are both brilliant and incredible web developers. Thank you for shipping such outstanding open-source projects.

The tech stack of purl.im #

Under the hood, purl.im is:

The result is a link shortener and QR code generator that I can confidently share with colleagues, knowing it won't go anywhere as long as I maintain my domain.

I decided not to use Netlify or Decap at this time because I have concerns about Netlify's new pricing model and did not want to receive a large surprise bill. On the 11ty Discord and Mastodon, people speak highly of Pages CMS's ease of use. Using and implementing Pages CMS was relatively easy. It did take me a while to figure out how to prevent pages from automatically appending a date to the markdown files, but after I solved that issue, it has been relatively smooth sailing. My one remaining problem with Pages is that it has been very confusing for non-technical users to log in. My next task is to create a help document outlining the workflow for purl.im and the Pages CMS.

Roll out #

Presently, I have implemented purl.im on the following sites:

Tags : website 11ty

Previous

United Lutheran Seminary to host 'A Vision for Liberating Our Democracy' Conference, February 27–28

Two-day gathering will explore the religious and racialized roots of American democracy and paths toward a more just future.

Next

How I fixed an 11ty performance error that caused my build time to be seven minutes

Notes on last night's Eleventy maintenance