QR Data Manager (QRDM)
QRDM provides a python package, network API endpoints, and web interfaces for encoding and decoding documents as a series of QR codes.
Setup and Execution
The qrdm package is written in pure Python; the ease of installation is dependent on
availability of its dependencies.
The simplest method of installing the qrdm package is via pip.
pip install qrdm
If pip is able to reach a suitable package index, qrdm will install along with its
core Python dependencies.
IMPORTANT
The QR decoding functionality depends on the
pyzbarpython package, which in turn depends on thezbarshared library. This may require you to install thezbarpackage via your system's package manager. See thepyzbarinstallation instructions for more details.
Two main "package extras" are available for qrdm that provide REST API application
("backend") and Web application ("frontend") services for the QR encoding & decoding
functions. These can be included by specifying qrdm[backend] or
qrdm[frontend] to the installation command above, respectively.
Web UI via Streamlit
A Streamlit "frontend" can be run via:
git clone https://github.com/mit-ll/qrdm
cd qrdm
python -m pip install .[frontend]
streamlit run ui/QRDM_Home.py --client.toolbarMode=viewer
This will host the app at http://localhost:8501 by default, with pages for QR encoding
and decoding. The host and port can be controlled by passing --server.port=XXXX and
--server.address=X.X.X.X, as per the syntax of the streamlit run command.
REST API via FastAPI
To run the "backend" FastAPI app via uvicorn, use uvicorn directly. For example:
python -m pip install qrdm[backend]
uvicorn qrdm.backend:app --host localhost --port 8182
This will result in the app being hosted at http://localhost:8182. Swagger
documentation will be hosted at http://localhost:8182/docs, if an internet connection
is available. Further options are available via uvicorn command-line configuration.
Disclaimer
DISTRIBUTION STATEMENT A. Approved for public release: distribution unlimited.
© 2024 Massachusetts Institute of Technology
- Subject to FAR 52.227-11 - Patent Rights - Ownership by the Contractor (May 2014)
- SPDX-License-Identifier: MIT
This material is based upon work supported by the Name of Sponsor under Air Force Contract No. FA8721-05-C-0002 and/or FA8702-15-D-0001. Any opinions, findings, conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the Name of Sponsor.
Delivered to the U.S. Government with Unlimited Rights, as defined in DFARS Part 252.227-7013 or 7014 (Feb 2014). Notwithstanding any copyright notice, U.S. Government rights in this work are defined by DFARS 252.227-7013 or DFARS 252.227-7014 as detailed above.
The software/firmware is provided to you on an As-Is basis.
Metadata
Release files for qrdm 2.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| qrdm-2.1.0.tar.gz | 48.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| qrdm-2.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 97.4 kB
Release files / qrdm-2.1.0.tar.gz
| Download URL | qrdm-2.1.0.tar.gz |
|---|---|
| Size | 48.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f9606c0962bc1921e91af720c7347961128c9647ea032413b70fba59e3e72276
|
|
BLAKE2b-256 checksum How to use checksums |
969e478133d57d87bbbf4b79f03cd8014e42f2ba759e18548c11b0c2487e8bc5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.11.8
|
Release files / qrdm-2.1.0-py3-none-any.whl
| Download URL | qrdm-2.1.0-py3-none-any.whl |
|---|---|
| Size | 49.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
03d2aa0c8ad58a86ef1585100764a89d4214eadac86b8059cb0b5478ea928a90
|
|
BLAKE2b-256 checksum How to use checksums |
780aa90d102600fd10313b91fbeb473df9ce53cb2d89c27451c361032317ad17
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.11.8
|