JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 1305744
  • Score
    100M100P100Q202641F

Package Exports

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (uqr) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    uqr

    npm version npm downloads bundle License JSDocs

    Generate QR Code universally, in any runtime, to ANSI, Unicode or SVG. ES module , zero dependency, tree-shakable.

    Install

    # Using npm
    npm install uqr
    
    # Using yarn
    yarn add uqr
    
    # Using pnpm
    pnpm add uqr

    Usage

    import {
      encode,
      renderANSI,
      renderSVG,
      renderUnicode,
      renderUnicodeCompact,
    } from 'uqr'
    
    const svg = renderSVG('Hello, World!')
    
    const ansi = renderANSI('https://192.168.1.100:3000', {
      // Error correction level
      ecc: 'L',
      // Border width
      border: 2,
    })
    
    // display QR Code in terminal
    console.log(ansi)

    API

    encode

    Encode plain text or binary data into QR Code represented by a 2D array.

    import { encode } from 'uqr'
    
    const {
      data, // 2D array of boolean, representing the QR Code
      version, // QR Code version
      size, // size of the QR Code
    } = encode(text, options)

    renderANSI

    Render QR Code to ANSI colored string.

    import { renderANSI } from 'uqr'
    
    const string = renderANSI(text, options)
    
    console.log(string)

    renderUnicode

    Render QR Code to Unicode string for each pixel. By default it uses and to represent black and white pixels, and it can be customizable.

    import { renderUnicode } from 'uqr'
    
    const string = renderUnicode(text, {
      blackChar: '█',
      whiteChar: '░',
      // ...other options
    })

    renderUnicodeCompact

    Render QR Code with two rows into one line with unicode , , , . It is useful when you want to display QR Code in terminal with limited height.

    import { renderUnicodeCompact } from 'uqr'
    
    const string = renderUnicodeCompact(text, options)
    
    console.log(string)

    renderSVG

    Render QR Code to SVG string.

    import { renderSVG } from 'uqr'
    
    const string = renderSVG(text, options)

    Credits

    QR Code generation algorithm is modified from nayuki/QR-Code-generator by Project Nayuki.

    CLI renders are inspired by qrcode-terminal.

    License

    MIT License