Printr removes the queue from Xerox and print shops. Customers scan your counter QR, upload documents from their phone, configure copies, colour, paper size and duplex, pay with a dynamic UPI QR, and your physical printer dispatches the job in seconds on Windows, macOS or Linux.
$ git clone https://github.com/ruthwwikreddy/printr.git && cd printr && npm run agent
[10:30:01] Initializing Universal Hardware Print Daemon...
[10:30:02] Detected Physical Printers: HP_DeskJet_3540, Canon_LBP2900, Epson_L3150
[10:30:15] ORDER #PRN-9402: Payment Verified (INR 12.00) via UPI
[10:30:16] Dispatched 6 pages [A4 MONOCHROME DUPLEX] → Canon_LBP2900
✓ Print Job Completed. Ready for counter pickup.
Four steps for the customer, zero steps for the shop owner.
The phone camera opens your kiosk instantly. No app download, no signup, no account.
PDF, JPG or PNG up to 50MB. Pages are counted automatically; copies, colour, A4/A3, duplex and page range are selected on the phone.
The total is priced live from your rate card, and a UPI QR for that exact amount is generated against your own VPA.
The counter agent picks up the paid job, downloads the file and prints it natively — the customer just collects the pages.
Replace pendrive transfers, WhatsApp file chaos and handwritten payment notebooks.
Dynamic UPI QR per order. Money lands in the shop owner’s bank VPA instantly — zero platform commission, no gateway onboarding, no settlement delay.
A single Node.js daemon on the counter PC auto-discovers USB and network printers and executes native print jobs on Windows, macOS, Linux and Raspberry Pi.
Password-protected /admin with live revenue, print queue, per-page rate editor, UPI setup, agent status and one-click job retry or cancel.
Generate an A4 standee with your shop name, rates, 3-step instructions and a QR code that opens the kiosk on any phone camera. Print it and you are live.
Server-side pdf-lib inspection counts pages on upload and honours custom page ranges like 1-4,8 so pricing is exact before the customer pays.
Firestore listeners with an HTTP polling fallback stream every state change — awaiting payment, queued, dispatched, printing, completed or failed.
The agent long-polls for paid jobs, so a document reaches the physical tray seconds after the customer’s UPI app confirms the payment.
Uploaded documents live only as long as they need to. The cleanup route purges files older than 24 hours and blanks their stored paths.
MIT licensed. Your code, your domain, your data, your printer. Deploy to Vercel, Netlify, a VPS or an offline LAN box in the shop itself.
Three routes, one flat-file database, an optional Firestore layer and a single agent script. Nothing hidden, nothing proprietary.
The Printr agent drives the native print pipeline of each operating system.
Prints through PowerShell Start-Process -Verb PrintTo with a SumatraPDF and Out-Printer fallback. Ships a double-click launcher: start-windows.bat.
set BACKEND_URL=https://print.yourshop.com && node print-agent\agent.jsUses the native lp driver and maps paper size, colour model, duplex binding and page ranges to CUPS options automatically.
BACKEND_URL="https://print.yourshop.com" ./print-agent/start-mac-linux.shEvery step, in order — from clone to a live counter standee.
Node.js 18+ is the only prerequisite. Run it locally first to confirm the kiosk and admin load.
git clone https://github.com/ruthwwikreddy/printr.git && cd printr && npm install && npm run devImport the repo, keep the Next.js preset, then set ADMIN_PASSWORD, PRINT_AGENT_AUTH_SECRET and (optionally) the NEXT_PUBLIC_FIREBASE_* variables. Attach your domain, e.g. print.yourshop.com.
ADMIN_PASSWORD=your-strong-password PRINT_AGENT_AUTH_SECRET=32+random-charactersSign in with your admin password and set the shop name, tagline, address, counter phone, UPI VPA and per-page rates for A4/A3 in black & white and colour.
Point BACKEND_URL at your deployed hub. Use PM2 to keep it alive across reboots so the shop never misses a job.
npm install -g pm2 && pm2 start ecosystem.config.js && pm2 save && pm2 startupIn /admin open Counter QR Standee, print it on A4, and place it on the counter. Customers are now self-service.
Everything shop owners and self-hosters ask before switching on Printr.
Yes. Printr is MIT licensed and hosted on GitHub. You can fork it, rebrand it, sell services around it and run it for as many shops as you like without paying anyone.
Printr is designed and engineered by Ruthwik Reddy, an engineer building open-source automation for real-world small businesses. Printr is released free under the MIT License so any print shop, campus or office anywhere can run an autonomous printing counter without paying software rent.
Clone it, deploy it, print your standee. It costs nothing but a domain.