Skip to content
QR Codes in your terminal
Branch: master
Clone or download
Latest commit 28b4981 Mar 21, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.travis.yml Travis tests Feb 4, 2016
CHANGELOG.md Add a Changelog Mar 27, 2018
LICENSE
README.md
go.mod Add go.mod Oct 12, 2018
go.sum Add go.mod Oct 12, 2018
qrterminal.go Fix import path {github.com/rsc/qr => rsc.io/qr} Jun 8, 2018
qrterminal_test.go fix(#5): 4-pixel-wide white border or "quiet zone" Mar 27, 2018

README.md

QRCode Terminal

Build Status

A golang library for generating QR codes in the terminal.

Originally this was a port of the NodeJS version. Recently it's been updated to allow for smaller code generation using ASCII 'half blocks'

Example

Full size ASCII block QR Code:
alt text

Smaller 'half blocks' in the terminal:
alt text

Install

go get github.com/mdp/qrterminal

Usage

import (
    "github.com/mdp/qrterminal"
    "os"
    )

func main() {
  // Generate a 'dense' qrcode with the 'Low' level error correction and write it to Stdout
  qrterminal.Generate("https://github.com/mdp/qrterminal", qrterminal.L, os.Stdout)
}

More complicated

Large Inverted barcode with medium redundancy and a 1 pixel border

import (
    "github.com/mdp/qrterminal"
    "os"
    )

func main() {
  config := qrterminal.Config{
      Level: qrterminal.M,
      Writer: os.Stdout,
      BlackChar: qrterminal.WHITE,
      WhiteChar: qrterminal.BLACK,
      QuietZone: 1,
  }
  qrterminal.GenerateWithConfig("https://github.com/mdp/qrterminal", config)
}

HalfBlock barcode with medium redundancy

import (
    "github.com/mdp/qrterminal"
    "os"
    )

func main() {
  config := qrterminal.Config{
      HalfBlocks: true,
      Level: qrterminal.M,
      Writer: os.Stdout,
  }
  qrterminal.Generate("https://github.com/mdp/qrterminal", config)
}

Credits:

Mark Percival m@mdp.im
Matthew Kennerly
Viric
WindomZ
mattn

You can’t perform that action at this time.