Code Monkey home page Code Monkey logo

qrterm's Introduction

CI

qrterm

qrterm is a simple but powerful tool to generate and simultaneously display QR-Codes inside your favorite ANSI-compatible Terminal. I came up with the idea during a project which required generation of simple QR-Codes and was wondering why the only other alternative was written in nodejs. It works on Windows, macOS and Linux platforms.

Screenshot

Screenshot

Features

  • generates QR-Codes for simple strings and has a lot of subcommands for specific standardized payloads (wifi, mail, sms, mms, geo, phone, skype, whatsapp, url, bookmark and bitcoin)
  • can output directly to the terminal or alternatively an image file (.png, .bmp and .jpg)
  • can generate autocompletion files for your favorite shell (Bash, Zsh, fish and PowerShell!)
  • perfect if you want to quickly and seamlessly transfer some data to your own or someone else's smartphone
  • lean (about 1.9 Mb on disk), portable cli tool without any external dependencies or runtimes

Installing qrterm

Currently there are two ways to get qrterm:

Support for installing via brew and scoop is pending

Via cargo

You must have the Rust toolchain installed. For installation instructions please visit rustup.rs.

cargo install --git https://github.com/lukasreuter/qrterm

As binary release

Just select the correct zip for your platform from the Release page on the github repository

TODO

  • expand help texts for the subcommands
  • Add error texts for some exit branches (mostly file output and qrcode gen)
  • implement even more types of qr payloads (contact card, giro payment, calendar event)
  • write unit tests for the payloads
  • write integration tests for edge case inputs

Why Rust?

Because it's a new, interesting language that i wanted to dig into :) Also it was easier to get started due to kennytm's excellent qrcode crate and Steven Allen's cross-platform capable term crate that are used for generating and drawing the codes respectively. Another important motivation was the need for a lean and fast tool that can work with minimal external dependencies, so other high-level languages and frameworks were considered out of the scope for a simple command-line tool.

qrterm's People

Contributors

kyluke avatar

Watchers

 avatar  avatar

Forkers

kyluke

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.