fuqr 2.1.0

A small and hackable QR code generator
Documentation
# fuqr

A small and hackable QR code generator

Dependency-free, heap-free `no_std` port of the Typescript library.

## Usage

```rust
use fuqr::{generate, render_svg_into, GenerateOptions, QrCode, SvgOptions};

let qr = generate("Hello, World!", GenerateOptions::default(), &mut [])?;

// Any core::fmt::Write sink works: String, or a fixed buffer to stay heap-free.
let mut svg = String::new();
render_svg_into(&qr, SvgOptions::default(), &mut svg)?;
```

### Reducing memory usage

This library is heap-free, so `QrCode<const N: usize>` defaults to fitting a maximum size version 40 QR code. Shrink `N`
with `modules_for` to cap memory.

```rust
// supports maximum size qr code; matrix is ~31KB
let qr = generate(content, options, &mut [])?;

// for up to 134 chars; matrix is ~1.7kb
let qr = generate::<{ modules_for(6) }>(content, options, &mut [])?;

// for up to 425 chars; matrix is ~4.8kb
let qr = generate::<{ modules_for(13) }>(content, options, &mut [])?;
```

`render_svg_into()`'s stack use also scales with the same parameter.

### Advanced

The extra plugins and encoders from the Typescript library are not yet implemented here.