Fountain code
Any ~k frames reconstruct the file. Dropped frames cost time, not correctness.
Self-describing frames
Session, sequence, block count, length and CRC — a receiver can join mid-stream.
Sender & receiver
With progress, so the UI can show frames collected.
Pluggable codec
Bring your own QR or colour-matrix renderer; the kit moves the bytes.
Verified: round-trips with up to ~47% frame loss at 1.0–1.5× overhead (see the test).