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

isir

v1.0.13

Published

Remote control raspberry pi via a Bluetooth keyboard or a remote shutter device.

Downloads

1

Readme

isir

Remote control Raspberry Pi via a Bluetooth keyboard or a remote shutter device.

Moving from reference implementation to first release candidate

  • config needs to be part of the project somehow,
  • there needs to be a home directory maybe (peapod?)
  • ./bin commnds need to be reachable, first check CWD and then __dirname

About

JavaScript has changed since the original code used here was written, the underlying code must be largely re-written to take advantage of classes and async/await.

The Bluetooth devices this library needs to listen to, may have unique /proc/bus/input/devices characteristics, that this system must account for.

Installation

You need to add the user under which this will run to the input group:


usermod -a -G input $USER
echo PLEASE REMEMBER TO LOG OUT AND LOG BACK IN

npm i -g isir

Tutorial


# specify location of your commands
isir conf system options commands /home/peapod/peapod/commands # will have the macros look for commands in /home/peapod/peapod/commands

# create some macros
isir conf macro aardwolf command aardwolf.sh # will create an aardwolf macro that will execute aardwolf.sh in /home/peapod/peapod/commands

# teach iSir to associate keystrokes, or remote control, or remote shutter combinations.
isir learn -m aardwolf /dev/input/event{2,5} # now enter aardwolf in your keeb and that key combination will become associated with the aardwolf macro

# now run the server to monitor for the keystrokes
isir listen /dev/input/event2 # will now listen for the keycombination and execute /home/peapod/peapod/commands/aardwolf.sh if it occurs

Usage


isir list # show potential input devices
isir watch /dev/input/event{3,5,8} # debug input data (connect a remote shutter, run this command, and start pressing buttons to see what is going on)
isir conf macro play command play.sh
isir learn -m play /dev/input/event2 # program will listen for a key combination associated with play.sh command and exit
isir learn -m stop /dev/input/event2 # program will listen for a key combination associated with stop.sh command and exit
isir listen /dev/input/event2 # now it will recognize your key combinations/buttons and execute commands in bin
# please note you should run listen in the directory with bin in it, or just cd to the location of isir
# prefix things with env DEBUG=*  for some debug info

Status

Functional but still needs hooks, rewrites, and modularization.

Credits / Previous Work

This program uses some code from https://www.npmjs.com/package/@tviso/keyboard-linux