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

pixoo-api-js

v0.0.3

Published

Lightweight JS Pixoo REST API

Downloads

7

Readme

Pixoo API JS

A lightweight fork of pixoo-api that works on Linux devices such as Raspberry Pi Zero thanks to the removal of all dependencies.

Install

npm i pixoo-api-js

Usage

To use the PixooAPI class, you need to import it in your JavaScript file:

import { PixooAPI } from 'pixoo-api-js'

Then you can create an instance of the PixooAPI class by calling the constructor with the address of the server to connect to and the size of the canvas in pixels (optional, default value is 64):

const pixoo = new PixooAPI('192.168.1.100', 64)

Before using the instance, you should initialize it by calling the initialize method:

await pixoo.initialize()

This will reset the push counter and send the current buffer to the server.

Methods

The PixooAPI class has several methods that you can use to manipulate the canvas and send the updates to the server:

  • clear(): fill the canvas with black pixels.
  • fill(color): fill the canvas with the given color.
  • drawPixel(x, y, color): draw a pixel at the given coordinates with the given color.
  • drawChar(char, position, color, font?): draw a character at the given position with the given color.
  • drawText(text, position, color, font?): draw a text on the canvas at the given coordinates with the given color.
  • drawTextCenter(text, y, color, font?): draw a text centered on the canvas on the given horizontal line (y) with the given color.
  • drawTextLeft(text, y, color, padding, font?): draw a text on the left side of the canvas on the given horizontal line (y) with the given color and padding.
  • drawTextRight(text, y, color, padding, font?): draw a text on the right side of the canvas on the given horizontal line (y) with the given color and padding.
  • drawRect(start, end, color, fill = false): draw a rectangle on the canvas between the given coordinates with the given color. If fill is true, the rectangle will be filled with the given color.
  • drawLine(start, end, color): draw a line on the canvas between the given coordinates with the given color.
  • push(): send the current buffer to the server.

You can also use the following getters to retrieve information about the canvas and the server connection:

  • buffer: get the current pixel buffer.
  • pushCount: get the number of times the push() method has been called.
  • pushAvgElapsed: get the average elapsed time of the push() method in milliseconds.

There are also a number of methods that map directly to the Pixoo API, check the lib/api.js file for more information.

For example, to draw a red pixel at coordinates (10, 10) and send the update to the server, you can do:

pixoo.drawPixel(10, 10, [255, 0, 0])
await pixoo.push()

License

GNU General Public License v3.0.

See LICENSE to see the full text.

Some parts of this project are based on community projects, and comments in the code indicate the original author and the license of the original code.