Introduction
Understand the boundary between the OPPA desktop agent and the OpenPrinter integration ecosystem, including Neplex OpenPrinter Cloud.
OPPA and OpenPrinter connect a remote application to printers that are reachable only from a user's local machine or network.
OPPA is the Open Printer Proxy Agent. It is a lightweight Tauri desktop application backed by a shell-independent Rust agent. It discovers and authenticates with a validated OpenPrinter service selected in runtime settings, discovers local printers, receives jobs, writes them to SQLite, renders their structured documents, submits them to a concrete printer transport, and reports the resulting state.
OpenPrinter is the generic integration layer.
@openprinter/protocol publishes the canonical TypeScript schemas and
codecs. @openprinter/server runs validated protocol sessions over
host-owned transports. The integrating application owns HTTP,
WebSocket or broker lifecycle, pairing authorization, durable public
credential storage, and connection routing; the SDK verifies the
initial gateway challenge. Neither package contains restaurant,
tenant, station, billing, or application-specific routing concepts.
Neplex OpenPrinter Cloud is the optional managed API built on this boundary. It provides project API keys, durable cloud jobs, paired-agent delivery, and public job projections. Self-hosting OpenPrinter and running OPPA are completely free; pricing applies only to the managed cloud API. Read the Neplex OpenPrinter Cloud guide, current pricing, or Get started for free with OpenPrinter Cloud.
The important invariant
OPPA never acknowledges receipt of a print job until the job is durably stored locally:
receive → validate → persist → acknowledge → render → submit → persist result → reportThe word submitted means that a printer backend accepted the job. It does not universally mean that paper was physically produced, because most printer interfaces cannot prove that.
Where to begin
- Follow Getting Started to run the example with a virtual printer.
- Read Architecture before adding an infrastructure boundary.
- Use Server SDK and Node.js Integration when integrating an existing application.
- Use the
openprintersdk guide when calling the managed public API. - Review Security before exposing an agent gateway.
The repository is intentionally conservative: it provides the foundation and explicit extension points without embedding a hosted queue, a business dashboard, arbitrary plugin execution, or a generic remote-control channel.