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

@acter/sentinel

v0.5.2

Published

Monitors folders for changes and processes them accordingly

Downloads

7

Readme

sentinel

Watches a folder and does things when criteria is met.

Setting up as a service

Sentinel can run as a service using many daemon managers. Here are some recommendations:

windows

nssm

Linux / Mac

forever

Configuration

Sentinel can be configured using JSON, JSON5, YML or even JavaScript files for configuration. You specifiy the input format by simply naming your default config file with the respective extension (.json, .json5, .yml or .js).

You can specify where Sentinel should get it's config by setting the environment variable SENTINEL_CONFIG_DIR to the folder your configuration file is located, otherwise Sentinel will look for a folder called config in the root of it's current folder.

Container and orchistration considerations

Because Sentinel can get configuration from anywhere, you can simply provide it a config dir through docker environment settings, but Sentinel can go further than that. If you specify a standard NODE_ENV environment variable, you can also tell sentinel to switch config between specific environment configurations within an indentical configuration folder shared throughout your platform.

For example, if you set NODE_ENV to 'production' sentinel will look for a config file called 'production', if you set it to 'development' ir will look for a file called 'development', and so forth. In this way, you can both configure Sentinel instances to configure themselves differently through the environment and distribute identical files (using NODE_ENV) or just use different folders through SENTINEL_CONFIG_DIR. It's up to you.

Debuggging

Sentinel supports extensive debugging in case something goes wrong. Configure debugging through the DEBUG environment variable, or set the debug path in configuration options.

If you set the debug path to "", everything that happens will be outputted. If you only want to log a particular set of events, use wildcards. For example, if you only want to debug sentinel watch functions, use "sentinel:watch:". If you only want to watch sentinel triggers, use "sentinel:trigger:*", etc. Here is a complete list of debug paths and what they do...

sentinel

Any application level events like loading, starting and stopping.

sentinel:watch

Any watch events that took place

Configuration options

Examples are given in YML for simplicity.