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 🙏

© 2026 – Pkg Stats / Ryan Hefner

@tetherto/miningos-tpl-wrk-sensor

v1.0.0

Published

MiningOS Template Worker Sensor

Readme

miningos-tpl-wrk-sensor

Table of Contents

  1. Overview
  2. Object Model
  3. Architecture

Overview

miningos-tpl-wrk-sensor is an abstract base worker for sensor devices in the MiningOS Bitcoin mining infrastructure ecosystem. This template provides the foundation for implementing concrete sensor workers (temperature, humidity, etc.) that are critical for monitoring and maintaining optimal mining operations.

Key Characteristics

  • Abstract Template: Serves as base class for concrete sensor implementations
  • Real-Time Data Collection: Collects sensor readings every 10 seconds via scheduled stats
  • Distributed Architecture: Supports rack-based sharding for horizontal scaling
  • RPC Communication: Full-featured RPC interface for remote management
  • Hypercore Storage: Uses Hyperbee for efficient time-series data storage
  • Alert System: Built-in alert processing and monitoring capabilities

Object Model

The following is a fragment of MiningOS object model that contains the concrete class representing Sensor workers (highlighted in blue). The rounded nodes reprsent abstract classes and the square nodes represents a concrete classes:

---
title: Object Model of MiningOS
---
flowchart RL
    bfx-wrk-base@{ shape: stadium, label: "*bfx-wrk-base*" }


    tether-wrk-base@{ shape: stadium, label: "*tether-wrk-base*" }
    tether-wrk-base--->bfx-wrk-base


    miningos-tlp-wrk-thing@{ shape: stadium, label: "*miningos-tlp-wrk-thing*" }
    miningos-tlp-wrk-thing--->tether-wrk-base


    miningos-tpl-wrk-sensor@{ shape: stadium, label: "*miningos-tpl-wrk-sensor*" }
    miningos-tpl-wrk-sensor--->miningos-tlp-wrk-thing


    miningos-wrk-sensor-temp-seneca["miningos-wrk-sensor-temp-seneca"]
    miningos-wrk-sensor-temp-seneca--->miningos-tpl-wrk-sensor


    style miningos-tpl-wrk-sensor fill:#005,stroke-width:4px,color:white

Check out miningos-tpl-wrk-container for more information about parent classes.

Architecture

BaseSensor Class (workers/lib/base.js)

The core sensor abstraction class that extends BaseThing from the parent template.

Key Features:

  • Real-Time Data: getRealtimeData() method for frequent polling
  • Snap Preparation: Calls _prepSnap() for data collection

WrkSensorRack Class (workers/rack.sensor.wrk.js)

The main worker orchestrator that manages sensor lifecycle and data collection.

Key Features:

  • Real-Time Data Scheduling: Collects data every 10 seconds (rtd schedule)
  • Thing Type Definition: Identifies as 'sensor' type
  • Stats Integration: Defines sensor-specific statistics operations

Configuration:

scheduleAddlStatTfs = [
  ['rtd', '*/10 * * * * *']  // Real-time data every 10 seconds
]