finds.dev← search

// the find

heuer/segno

★ 783 · Python · BSD-3-Clause · updated Mar 2025

Python QR Code and Micro QR Code encoder

Segno is a pure-Python QR Code and Micro QR Code encoder with zero dependencies, implementing ISO/IEC 18004:2015 in full. It targets developers who need correct, spec-compliant QR generation — not just something that scans. It's the right pick if you're embedding QR generation in a service and don't want to drag in a C extension or a heavy image library.

1. Actually zero dependencies — the PNG, SVG, EPS, and PDF serializers are all written from scratch. That's a real engineering commitment, not a marketing claim. 2. Full Micro QR Code support and Structured Append mode (splitting one message across multiple codes) — features that most Python QR libraries simply skip. 3. Test suite is serious: 1500+ test cases with ≥98% coverage, including reference matrices verified against the ISO spec figures directly. 4. Fastest pure-Python encoder per its own benchmarks — and those benchmark charts are in the repo, not just asserted.

1. 783 stars after what appears to be years of effort suggests it's either undermarketed or the use case is narrow — not a problem with the library, but a signal about ecosystem adoption. 2. The artistic/animated QR feature requires a separate plugin (qrcode-artistic), which leans on Pillow — the zero-dependency pitch only holds for the core. 3. No built-in decoding. If you're building a round-trip test or verification pipeline, you'll need a separate library. 4. Last push was March 2025, activity has slowed — not abandoned, but if you hit an edge case, don't expect a fast response.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →