npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@gauntface/printboy

v0.0.13

Published

A simple service to print labels.

Downloads

35

Readme

Printboy

A simple service to print labels.

This is built for personal use case of easily printing return labels from a Raspberry Pi but there is no reason it couldn't be altered and improved for your use-cases.

It works by "generating" a label on a HTML canvas which is saved as a png and then printed via an lp command.

Printboy

Setup

Print install

The first thing to do is ensure the printer works via CUPs.

A lot of this is from these articles:

  • https://www.baitando.com/it/2017/12/12/install-dymo-labelwriter-on-headless-linux
  • https://www.taklischris.info/other/use-your-dymo-printer-on-ubuntu
  1. Install CUPs sudo apt-get install -y git cups cups-client printer-driver-dymo or sudo dnf install cups-deve;

  2. Get printer definition

    1. git clone https://github.com/matthiasbock/dymo-cups-drivers.git
    2. sudo mkdir -p /usr/share/cups/model
    3. sudo cp dymo-cups-drivers/ppd/lw450.ppd /usr/share/cups/model/
  3. Add yourself as a cups admin sudo usermod -a -G lpadmin $USER

  4. Allow remote access to cups:

    sudo cupsctl --remote-admin
    sudo service cups restart
  5. Go to CUPs admin page http://localhost:631

    1. Use your computer login credentials for the username and password for the site
  6. Install the printer

    1. IMPORTANT: Use DYMO_LabelWriter_450_Turbo for the printer name, otherwise printboy will not work.
    2. Cups should pick the correct driver for you.
    3. For general:
      • Output Resolution: 300x600 DPI
      • Print Quality: Barcodes and Graphics
      • Media Size:
        • 30252 Address: 1-1/8" x 3"
        • 30364 Name Badge: 2-1/4" x 4"
  7. Run a test print

Install printboy

  1. Install node
  2. Run npm install @gauntface/printboy
  3. Run cd node_modules/@gauntface/printboy
  4. Run npm run setup
  5. Look at the output for the pm2 command to setup startup

Optional: Install Reverse Proxy

  1. Run sudo apt update && sudo apt install nginx

  2. Run sudo nano /etc/nginx/sites-available/default

    1. Change the location / { block to use:

      location / {
              # First attempt to serve request as file, then
              # as directory, then fall back to displaying a 404.
              # try_files $uri $uri/ =404;
              proxy_pass http://localhost:1314;
              proxy_http_version 1.1;
              proxy_set_header Upgrade $http_upgrade;
              proxy_set_header Connection 'upgrade';
              proxy_set_header Host $host;
              proxy_cache_bypass $http_upgrade;
              proxy_cache_valid 5m;
      }
  3. Check for errors with sudo nginx -t

  4. Restart with sudo systemctl restart nginx