TL;DR

Term::QRCode generates QR Codes on the terminal.

Well, that shouldn’t come as a surprise, given that it’s literally the name of the module.

It does its job nicely:

If the animation above does not work for any reason, the following picture should give a hint of what it does:

Term::QRCode example

It’s interesting that the difference in size between the height and the width of the terminal characters is addressed by doubling the inputs so that one pixel is represented by two characters. I’d say it works pretty find in the terminals I use.

The workhorse is Text::QRCode, which is a wrapper around libqrencode that provides an output in an… interesting format. Anyway, it does its job with XS so I’m grateful it exists.

And you, are you grateful for something? Stay safe!