PyQRCode
A QR code generator written purely in Python with SVG, EPS, PNG and terminal output.
Decision gist · record as of 2026-08-14
Yes, with conditions. PyQRCode is worth installing if you need simple QR code generation without external image library dependencies and can tolerate dormant maintenance. The pure-Python implementation and zero runtime dependencies make it lightweight and portable. However, verify compatibility with your Python version before adopting, and consider more actively maintained alternatives if you require PNG output or ongoing feature development.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Optional: install pypng to render PNG output; otherwise SVG, EPS, and terminal output work without additional dependencies.
- Installation friction is high: the package has not been updated since 2016-06-20 and is marked dormant, though the repository remains active with 427 stars and a recent commit in 2024-04-15.
- No runtime dependencies simplify installation, but the long gap between releases raises questions about maintenance.
License · maintenance · safety
BSD (permissive) — BSD license (permissive) places no significant restrictions on use, modification, or redistribution in commercial or private projects.
last release 2016-06-20 (3707 days) · last repo commit 2024-04-15 · 427 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 636,634 downloads/mo, #5,624 on PyPI
Alternatives
Verify before relying
pip install pyqrcode
import pyqrcode
url = pyqrcode.create('http://example.com')
url.svg('output.svg', scale=8)- Whether the package works reliably with modern Python versions (3.9+) despite no recent releases.
- Whether PNG rendering via pypng is actively maintained and compatible with current pypng versions.
- Current state of the repository and whether dormancy indicates abandonment or stable maintenance.
What it is and what it does
PyQRCode is a pure-Python QR code generator that encodes data into QR codes and renders them in multiple formats: SVG, EPS, PNG (with optional pypng), and plain text for terminal display. It aims to follow the QR code standard closely and exposes all encoding properties for manual control, though most simple use cases require only two lines of code.
The package has no runtime dependencies and works with Python 2.6, 2.7, and 3.x. It is used for generating QR codes programmatically without requiring PIL or other image libraries for SVG and text output. The long gap since its last release (2016) and dormant maintenance status mean it may not track the latest Python ecosystem changes, though the repository remains accessible and the core QR encoding algorithm is stable.
Use it for
- Generate QR codes for URLs or contact information and export them as SVG for web embedding.
- Create QR codes in terminal applications for display in Linux terminal emulators without external image rendering.
- Batch-generate QR codes with custom error correction levels and versions for inventory or tracking systems.
- Embed QR code generation in legacy Python 2 applications where modern alternatives may not be compatible.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, with conditions.
PyQRCode is worth installing if you need simple QR code generation without external image library dependencies and can tolerate dormant maintenance. The pure-Python implementation and zero runtime dependencies make it lightweight and portable. However, verify compatibility with your Python version before adopting, and consider more actively maintained alternatives if you require PNG output or ongoing feature development.
Install
pyqrcode on PyPI
Before you install
Installation friction is high: the package has not been updated since 2016-06-20 and is marked dormant, though the repository remains active with 427 stars and a recent commit in 2024-04-15. No runtime dependencies simplify installation, but the long gap between releases raises questions about maintenance.
Optional: install pypng to render PNG output; otherwise SVG, EPS, and terminal output work without additional dependencies.
License in practice
BSD license (permissive) places no significant restrictions on use, modification, or redistribution in commercial or private projects.
Quickstart
pip install pyqrcode
import pyqrcode
url = pyqrcode.create('http://example.com')
url.svg('output.svg', scale=8)
Verify before relying
- Whether the package works reliably with modern Python versions (3.9+) despite no recent releases.
- Whether PNG rendering via pypng is actively maintained and compatible with current pypng versions.
- Current state of the repository and whether dormancy indicates abandonment or stable maintenance.
Package facts
| License | BSD permissive |
| Python support | Not specified |
| Install friction | High. Source build required |
| Runtime dependencies | None |
| Maintenance | Dormant 3,707 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 636,634 / month, #5,624 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaEnvironment :: ConsoleIntended Audience :: DevelopersLicense :: OSI Approved :: BSD LicenseNatural Language :: EnglishOperating System :: Microsoft :: WindowsOperating System :: OS IndependentOperating System :: POSIXProgramming Language :: Python :: 2.6Programming Language :: Python :: 2.7Programming Language :: Python :: 3Topic :: Software Development :: Libraries :: Python Modules |
Evidence: PyQRCode-1.2.1.tar.gz; PyQRCode-1.2.1.zip
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “qr code generator python”
- PyQRCodePyQRCode generates QR codes in pure Python and outputs them as SVG,…
- segnoGenerates QR codes and Micro QR codes conforming to ISO/IEC…
- qrcodeGenerates QR codes as images (PNG, SVG) or ASCII art from text or…
Give your agent the search over MCP, or paste the wish link into any chat.
More Python Modules packages
Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.
Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.
Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.
PyYAML parses and emits YAML 1.1 data format, enabling serialization and deserialization of configuration files and Python objects to and from human-readable YAML text.
Pydantic validates Python data structures against type hints, coercing and checking input at runtime to ensure it matches a declared schema.
Provides reusable metadata objects for use with PEP-593 `typing.Annotated` to express common constraints like bounds, collection sizes, and predicates on types.
Install it if you use or build libraries that need to express type constraints in a standardized, inspectable way—or if you want to annotate your own types with…
Provides runtime tools to inspect and introspect Python type annotations, enabling programmatic examination of type hints at execution time.
See also qrcode · segno · django-qr-code · pyStrich · pdf417gen · pypng · treepoem · svg.py · ppf-datamatrix · CairoSVG