JS Print Manager

Print Raw Data & Files at Client-side from any Web platform using Javascript

Key Features

  Send Raw Bytes, Text & Files to any Client Printer
  Print ESC/P, PCL, PostScript, ZPL, EPL, PDF, XLS, DOC
  Thermal, impact, dot-matrix, RFID, kiosk, POS, receipt
  Cross-browser & Plugin-free (Pure JavaScript)
  Cross-Platform! Windows, Linux, RPi & Mac!


  Download JSPrintManager   Buy

Advanced Client-side Printing Solution for Javascript

What is JSPrintManager?

Features at a Glance

 Any Web Platform

Based on pure Javascript code, JSPrintManager.js can be used in any Web Platform like ASP.NET, PHP, Django, Ruby On Rails (RoR), Express.js as well as in any Web Framework like Angular or React

 Cross Platform Client

Any Client platform can print from your Website. JSPrintManager App supports Windows, macOS / OS X, Linux & Raspberry Pi (Linux ARM) devices. It's a very small client App without external dependencies!  No ActiveX,  No Flash,  No Silverlight,  No Java,  No .NET Framework

 Raw Data Printing

Send any raw data supported by the client printer like Epson ESC/P, HP PCL, PostScript, Zebra ZPL and Eltron EPL, and more!. Shipping labels generated by postal services like UPS, FedEx, USPS, DHL as well as PRN files are also supported!

 Print Images & Docs

In addition to print raw commands, you can also use JSPrintManager solution to send and print known file formats like PDF, TXT, DOC/x, XLS/x, JPG, PNG, and more! PNG, JPG and BMP are natively supported; others will require external software like Adobe Reader, Word, Excel, LibreOffice, etc.

 Print to Any Printer

Print to any brand and type of client printers! Thermal Label Barcode printers, POS receipt printers, Impact printers, Ticket printers, RFID printers, Dot-Matrix and more!

 Get Printers Info

Get the list of installed printers at the client machine from Javascript code.

 Printer Communication

Client Printers Connectivity support: installed Windows printers (for USB connection), Shared Printers, Parallel Port (LPT) or Serial Port RS-232 (COM) as well as IP/Ethernet Network printers. On Linux & Mac OS, any kind of printer installed through CUPS is supported.

 One-time Licensing Fee

JSPrintManager.js has a simple licensing model with one-time license fee. JSPrintManager Client App can be installed on any number of machines without paying any fees!

JSPrintManager Components

The Website component

JSPrintManager is a Javascript object which is used in your website to generate "Client Print Jobs". A Client Print Job allows you to specify which client printer to use (Default, one specific Printer Name, show system Printer dialog box or some LPT or RS232 COM port) as well as the commands or files you want to print or send to the specified client printer.

 Download JSPrintManager.js Code

The Client-side component

The JSPrintManager App needs to be installed at the client machine just once. It's a lightweight native app (without any dependencies) that processes all the "Client Print Jobs" generated by the Javascript object.
JSPrintManager App can be installed on Windows, Linux, Mac & Raspberry Pi!

 Download JSPrintManager Client App

Print RAW data and commands to a full range of Client Printers from your Website

What's Raw Printing?

Raw Printing (a.k.a. "Raw Data Printing", "DOS-Mode Printing", "Line-Mode Printing") is the process of sending a stream of bytes (sometimes simple ASCII characters) directly to the target printer hardware. Those bytes are expressed by following the syntax and rules of the Command Language (a.k.a. Programming Language) supported by the target printer. Some Raw Printing Languages are composed of human-readable ASCII characters (like Zebra ZPL, EPL, etc) while others combine them with non-printable characters like is the case of the famous ESC/P, Postscript and PCL languages. Our JSPrintManager allows you to send those commands to your clients' printers from your website through an elegant and simple plugin-free approach.

 Windows   Linux / Raspberry Pi   macOS / OSX

Any Client Printer Brand or Type

JSPrintManager does support any kind of printers! That means you can print and send raw commands from your Website to any brand of Thermal Label Barcode printers, POS receipt printers, Impact printers, Ticket printers, RFID printers, Dot-Matrix printers, Kiosk printers, Cash Drawers/Registers, Slip printers, Multifunction printers, ID Card printers, Wristband printers, Passbook or Bankbook printers, Kitchen printers, Laser printers and Inkjet printers installed or available at the client machine.

Printer Connectivity Support

JSPrintManager does support local installed printers with the correct driver or the "Generic / Text Only" driver built-in Windows (for USB connection), Shared Networks printers with a UNC name, printers directly connected to Parallel Port (e.g. LPT1) Centronics or Serial Port RS-232 (e.g. COM1) as well as IP/Ethernet Network printers (e.g. DNS printer name + Port 9001). On Linux, Raspberry Pi & Mac OS, JSPrintManager leverages built-in CUPS system so any kind of printer installed through CUPS is supported.

You can use JSPrintManager in your Website for sending and printing any printer programming languages like Epson ESC/P, HP PCL, PostScript, Zebra ZPL and Eltron EPL, Zebra XML-enabled format, Intermec IPL, Datamax-O'Neil DPL, Godex EZPL, Printronix ZGL, SATO SBPL, Avery-Dennison (Monarch) RCL, Wasp WPL, Citizen CLP, IBM Proprinter, Cognitive-TPG CPL, Dymo ESC codes, Samsung-Bixolon ESC/POS codes and SPL, TOSHIBA-TEC TCPL, TSC TSPL-EZ, DASCOM, etc. In fact, any other printer languages that can be expressed as an array of bytes are supported! Of course, you can also print ZPL or EPL shipping labels generated by postal services like UPS, FedEx, USPS, DHL, etc. In addition to native printer commands, you can also print PRN files!

Try Online Demo!


In addition to print native commands, you can also use JSPrintManager solution to send and print common file formats like PDF, TXT, DOC, XLS, JPG, PNG, and so on.

Printing File Formats Requirements

  Windows Clients Linux, RPi & Mac Clients
DOC, DOCX Microsoft Word is required LibreOffice is required
XLS, XLSX Microsoft Excel is required LibreOffice is required
PDF Adobe Reader or FoxIt Reader is required Natively supported!
TXT Natively supported! Natively supported!
JPEG Natively supported! Natively supported!
PNG Natively supported! Natively supported!
BMP Natively supported! Natively supported!
Printer Support You can print files to local installed printers ONLY! Parallel, Serial and IP/Ethernet printers are NOT supported. You can print files to any installed printers through CUPS system.
Try Online Demo!