pyStrich
PyStrich is a fast pure-Python module to generate 1D and 2D barcodes: Code 39, Code 128 (including GS1-128), EAN-13, ITF-14, Data Matrix (including GS1 Data Matrix), QR Code, PDF417 and Aztec Code.
Decision gist · record as of 2026-08-14
Yes. pyStrich is actively maintained, has low install friction, carries no known vulnerabilities, and uses a permissive license. Install it if you need to generate barcodes in Python without external services or system dependencies (beyond pillow for PNG output). The recent release cadence and modern codebase make it a reliable choice for production use.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Python >=3.10 required; PNG output requires the pyStrich[png] extra (installs pillow).
- Low install friction with only two runtime dependencies (pillow and typing-extensions).
- Actively maintained with a release from 2026-07-23.
License · maintenance · safety
Apache-2.0 (permissive) — Apache-2.0 is permissive; you may use, modify, and distribute pyStrich freely in commercial and private projects with minimal restrictions.
last release 2026-07-23 (22 days) · last repo commit 2026-08-07 · 106 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 80,298 downloads/mo, #14,300 on PyPI
Alternatives
Verify before relying
pip install pyStrich
from pystrich.code128 import Code128
barcode = Code128('ABC')
barcode.save('barcode.png')- Performance characteristics compared to other barcode libraries (described as 'fast' but no benchmarks provided).
- Decoding capability (fact sheet states encoding only, but real-world use cases may need clarification).
What it is and what it does
pyStrich is a pure-Python barcode encoder that generates 1D codes (Code 39, Code 128, EAN-13, ITF-14) and 2D codes (Data Matrix, QR Code, PDF417, Aztec) in multiple output formats. It outputs to PNG (with pillow), SVG, EPS, DXF, and terminal text without requiring external binaries or system libraries beyond pillow for raster formats.
The package is actively maintained, supports current Python versions (>=3.10), and includes comprehensive typing and test coverage. It depends on pillow and typing-extensions at runtime. Use it when you need to programmatically generate barcodes for inventory, shipping, point-of-sale, or document workflows without external encoding services.
Use it for
- Generate shipping labels and tracking barcodes for e-commerce order fulfillment.
- Create QR codes for product packaging, marketing materials, or event tickets.
- Encode inventory item numbers as Code 128 or EAN-13 for retail or warehouse systems.
- Produce Data Matrix codes for GS1 compliance in supply chain applications.
- Generate barcodes in SVG format for web applications or PDF documents without raster dependencies.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
pyStrich is actively maintained, has low install friction, carries no known vulnerabilities, and uses a permissive license. Install it if you need to generate barcodes in Python without external services or system dependencies (beyond pillow for PNG output). The recent release cadence and modern codebase make it a reliable choice for production use.
Install
pystrich on PyPI
Before you install
Low install friction with only two runtime dependencies (pillow and typing-extensions). Actively maintained with a release from 2026-07-23.
Python >=3.10 required; PNG output requires the pyStrich[png] extra (installs pillow).
License in practice
Apache-2.0 is permissive; you may use, modify, and distribute pyStrich freely in commercial and private projects with minimal restrictions.
Quickstart
pip install pyStrich
from pystrich.code128 import Code128
barcode = Code128('ABC')
barcode.save('barcode.png')
Verify before relying
- Performance characteristics compared to other barcode libraries (described as 'fast' but no benchmarks provided).
- Decoding capability (fact sheet states encoding only, but real-world use cases may need clarification).
Package facts
| License | Apache-2.0 permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagespillowtyping-extensions |
| Maintenance | Actively maintained 22 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 80,298 / month, #14,300 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Programming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyTopic :: Multimedia :: GraphicsTopic :: Office/Business |
Evidence: pystrich-0.19-py3-none-any.whl
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 › “1d 2d barcode library”
- pyStrichpyStrich generates 1D and 2D barcodes (Code 39, Code 128, EAN-13,…
- pdf417genEncodes text and binary data into PDF417 2D barcodes and renders them…
- ppf-datamatrixGenerates datamatrix codes (2D barcodes) in SVG format from Python,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Graphics packages
Pillow adds image processing capabilities to Python, providing file format support, efficient pixel data handling, and image manipulation operations.
Install it if you need to work with images in Python—it is the de facto standard for this task.
fonttools manipulates font files in multiple formats (TrueType, OpenType, AFM, Type 1, Mac-specific) and includes TTX, a tool to convert fonts to and from XML text format.
Install it if you need to read, write, or manipulate fonts programmatically or via the TTX command-line tool.
Enables matplotlib figures to display inline directly within Jupyter notebooks and IPython environments instead of in separate windows.
PyMuPDF extracts, renders, converts, and manipulates PDF and other document formats (XPS, EPUB, images, Office files via Pro) with high performance, providing text, tables, images, and metadata with precise layout information.
The AGPL license requires careful review if you are building proprietary software—commercial licensing is available from Artifex.
pypdfium2 is a Python binding to PDFium that enables PDF rendering, inspection, manipulation, and creation through a ctypes interface to Google's PDFium library.
Install it if you need PDF rendering, inspection, or manipulation in Python; the medium install friction is offset by comprehensive platform support.
Altair is a declarative Python library for creating interactive statistical visualizations by writing simple, readable code that compiles to Vega-Lite specifications.
See also ppf-datamatrix · treepoem · segno · PyQRCode · qrcode · pyzxing · pdf417gen · django-qr-code · pyzbar · zxing-cpp