A Python library to manage a Zebra printer fleet and an API for ZPL print requests.
Project description
zebra_day
zebra_day is a Python library, CLI, simulator, and FastAPI web service for managing Zebra printer fleets and serving ZPL print workflows. Shared fleet state, templates, label profiles, observations, and print jobs now live in daylily-tapdb only.
What Changed
- TapDB is the only supported shared datastore.
source ./activate <deploy-name>is the only supported repo activation path.- The service/admin runtime uses direct TapDB access through
ZebraDayClient. - Downstream Python applications should use
ZebraDayApiClientagainst a running zebra_day API. - Cognito is the default auth mode.
--no-authremains the explicit runtime override.
Removed in this major cut:
- local fleet/config files as runtime state
- DynamoDB and S3 runtime support
print_mgr.zpl()and package-root helper shimszday_start,zday_quickstart, andzday dynamo
Quickstart
source ./activate local
zday config init
zday config status
zday gui start
The default GUI port is 8118. HTTPS is enabled automatically when local certs are available.
Runtime Model
flowchart LR
CLI["zday CLI"] --> Service["zebra_day service/runtime"]
GUI["FastAPI + Jinja UI"] --> Service
APIClient["ZebraDayApiClient"] --> API["zebra_day HTTP API"]
API --> Service
Service --> TapDB["daylily-tapdb namespace"]
Service --> Printers["Zebra printers over TCP 9100"]
Simulator["simulator"] --> Printers
Python Usage
Direct service/admin usage:
from zebra_day import ZebraDayClient, ZebraDaySettings
settings = ZebraDaySettings.from_context("local")
client = ZebraDayClient(settings)
printers = client.list_printers("default")
Downstream app usage:
from zebra_day import ZebraDayApiClient
with ZebraDayApiClient("https://localhost:8118", api_key="internal-token") as client:
printers = client.list_printers("default")
client.submit_print_job(
lab="default",
printer="printer-1",
label_zpl_style="tube_2inX1in",
uid_barcode="SAMPLE-001",
)
CLI Surface
zday gui ...: start, stop, restart, and inspect the GUI serverzday printer ...: list, scan, and sync printerszday template ...: list, show, save, preview, and delete templateszday tapdb ...: pass through to TapDB lifecycle commandszday cognito ...: inspect or validate the daycog-backed auth contractzday users ...: manage Cognito group membership for operator/admin roleszday logs ...: inspect zebra_day GUI logs
Docs
- docs/README.md
- zebra_day/docs/programatic_guide.md
- zebra_day/docs/zebra_day_ui_guide.md
- docs/tapdb_hard_migration_plan.md
Development Checks
ruff check zebra_day tests
ruff format --check zebra_day tests
mypy zebra_day --ignore-missing-imports
pytest tests/ -v --tb=short
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file zebra_day-3.5.6.tar.gz.
File metadata
- Download URL: zebra_day-3.5.6.tar.gz
- Upload date:
- Size: 20.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d791263d15ae97f896707bc5f03e1d384edf867c0f1e687e5df160e6380d0025
|
|
| MD5 |
262142c9f666c9ab5a0f94c8af8bde37
|
|
| BLAKE2b-256 |
dfd67e263b7aa8a2a848a8d5c7e36ae7325f07a3729d366b7cd08022f9ae711a
|
File details
Details for the file zebra_day-3.5.6-py3-none-any.whl.
File metadata
- Download URL: zebra_day-3.5.6-py3-none-any.whl
- Upload date:
- Size: 20.6 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
60c1d5ba674feed1fbb290d4a858faa4baf21b96cfde6f4ecd5c96f0561cfc22
|
|
| MD5 |
7bff1b3d5f2aedcfa20841b4eca20bdf
|
|
| BLAKE2b-256 |
0b1b0029168f38b50c6c61b069de686c702f864b04cd2e96aff3220426b10463
|