canadaduane / elm-hccb

High Capacity Color Barcode (HCCB) Elm library
BSD 3-Clause "New" or "Revised" License
45 stars 9 forks source link

High Capacity Color Barcode (HCCB)

This is an Elm library that displays data as an HCCB (High Capacity Color Barcode). It dynamically constructs an SVG element based on the data to display (i.e. on an HTML page).

Why?

For the project I'm pursuing, I needed a colorful barcode format that can pack a lot of data. In addition, I hoped to find a barcode that kids would find interesting. When I showed my daughter an HCCB she said "Oh, that one's pretty", so I decided the HCCB fit the bill.

In a future project, I intend to "stream" data through an on-screen HCCB--bypassing tricky usb-serial drivers and other methods of programming an Arduino in the classroom.

Examples

See Simple and Streaming examples online.

Status

About Barcodes

I discovered HCCB, among other formats, through Specifications For Popular 2D Bar Codes. Skimming through the various formats is quite informative.

Getting started

Install Elm in your $PATH.

Compile Hccb

elm make src/Hccb.elm

Compile an example

elm make examples/Simple/Simple.elm

Then view the example in http://localhost:8000/examples/Simple/index.html with:

elm reactor

Credit

Authored by Duane Johnson

License

BSD3 Licensed. Feel free to do what you want with this code; however, HCCB is patented by Microsoft and I have no idea if they want you to use HCCB or not.