How I built DotPlus – a cross-platform QR & barcode generator in Rust (with GUI, CLI, Docker, and PNG export)

Hello everyone 👋

I’m Danil, and I’d love to share the story behind DotPlus — a fully offline QR and barcode generator written in Rust. It combines both GUI and CLI, supports PDF export, Docker, CSV batch generation, and works seamlessly across Windows…


This content originally appeared on DEV Community and was authored by nigdanil

Hello everyone 👋

I'm Danil, and I'd love to share the story behind DotPlus — a fully offline QR and barcode generator written in Rust. It combines both GUI and CLI, supports PDF export, Docker, CSV batch generation, and works seamlessly across Windows and Linux.

🧩 What is DotPlus?

DotPlus is a free tool for generating QR codes and barcodes (EAN-13, Code 39, etc.).

It supports:

  • ✅ GUI (built with egui)
  • 🛠️ CLI for automation / scripts
  • 📄 PDF & PNG export (with A4 layout)
  • 🐧 Linux + Windows binaries
  • 📦 Docker support for headless environments
  • 🖼️ Logo overlays, Cyrillic input, and CSV batch processing
  • 🔒 Fully offline — no internet, telemetry or accounts

🔧 Why Rust?

Rust was a natural fit for:

  • Cross-platform compilation
  • Performance with image generation
  • A rich ecosystem (qrcode, barcoders, imageproc, etc.)
  • Safety — especially when handling files and assets

The GUI is built using egui, and CLI uses native std::env::args.

📁 How it works

The core logic (CSV → image generation → export) is shared between CLI and GUI. This helps keep things DRY and consistent.

  • GUI is built with eframe, includes live preview and layout editor
  • CLI supports flexible flags like:
  dotplus --mode qr --csv data.csv --logo logo.png --output out/ --qr-size 200


`

📦 Releasing on Windows, Linux, and Docker

DotPlus uses GitHub Actions for CI and automatic packaging:

  • .exe, .deb, .rpm binaries
  • Docker images (for headless batch jobs)
  • Flatpak/Snap coming soon

Releases:
👉 https://github.com/nigdanil/dotplus/releases

🌍 Use cases

DotPlus is actively used for:

  • ID cards and staff badges
  • Library and archive cataloging
  • Logistics, inventory, asset tracking
  • Document labeling in healthcare and schools
  • Government signage and event navigation

It’s free for both personal and public sector use (under a custom license).

📷 Demo and screenshots

Visit the live site for videos, screenshots and how-tos:
👉 https://nigdanil.github.io/dotplus

screenshot

🙌 What’s next?

  • Translation & localization (multi-country support)
  • Flatpak / Snap packaging
  • Community templates (label layouts, QR formats)

💬 Feedback welcome

If you’re into:

  • CLI tools
  • Offline utilities
  • Rust GUI
  • Batch automation

I’d love to hear your thoughts, suggestions or ideas! PRs are welcome too 🙂

🔗 GitHub: https://github.com/nigdanil/dotplus
🌍 Live: https://nigdanil.github.io/dotplus

Thanks for reading and happy hacking!

— Danil (@nigdanil)


This content originally appeared on DEV Community and was authored by nigdanil


Print Share Comment Cite Upload Translate Updates
APA

nigdanil | Sciencx (2025-07-04T13:10:41+00:00) How I built DotPlus – a cross-platform QR & barcode generator in Rust (with GUI, CLI, Docker, and PNG export). Retrieved from https://www.scien.cx/2025/07/04/how-i-built-dotplus-a-cross-platform-qr-barcode-generator-in-rust-with-gui-cli-docker-and-png-export/

MLA
" » How I built DotPlus – a cross-platform QR & barcode generator in Rust (with GUI, CLI, Docker, and PNG export)." nigdanil | Sciencx - Friday July 4, 2025, https://www.scien.cx/2025/07/04/how-i-built-dotplus-a-cross-platform-qr-barcode-generator-in-rust-with-gui-cli-docker-and-png-export/
HARVARD
nigdanil | Sciencx Friday July 4, 2025 » How I built DotPlus – a cross-platform QR & barcode generator in Rust (with GUI, CLI, Docker, and PNG export)., viewed ,<https://www.scien.cx/2025/07/04/how-i-built-dotplus-a-cross-platform-qr-barcode-generator-in-rust-with-gui-cli-docker-and-png-export/>
VANCOUVER
nigdanil | Sciencx - » How I built DotPlus – a cross-platform QR & barcode generator in Rust (with GUI, CLI, Docker, and PNG export). [Internet]. [Accessed ]. Available from: https://www.scien.cx/2025/07/04/how-i-built-dotplus-a-cross-platform-qr-barcode-generator-in-rust-with-gui-cli-docker-and-png-export/
CHICAGO
" » How I built DotPlus – a cross-platform QR & barcode generator in Rust (with GUI, CLI, Docker, and PNG export)." nigdanil | Sciencx - Accessed . https://www.scien.cx/2025/07/04/how-i-built-dotplus-a-cross-platform-qr-barcode-generator-in-rust-with-gui-cli-docker-and-png-export/
IEEE
" » How I built DotPlus – a cross-platform QR & barcode generator in Rust (with GUI, CLI, Docker, and PNG export)." nigdanil | Sciencx [Online]. Available: https://www.scien.cx/2025/07/04/how-i-built-dotplus-a-cross-platform-qr-barcode-generator-in-rust-with-gui-cli-docker-and-png-export/. [Accessed: ]
rf:citation
» How I built DotPlus – a cross-platform QR & barcode generator in Rust (with GUI, CLI, Docker, and PNG export) | nigdanil | Sciencx | https://www.scien.cx/2025/07/04/how-i-built-dotplus-a-cross-platform-qr-barcode-generator-in-rust-with-gui-cli-docker-and-png-export/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.