open-index/open-npm huggingface dataset:
npm package: @modbus2mqtt/modbus2mqtt-test
Description: server for modbus2mqtt for REST API of configuration and publishing modbus values to mqtt
Author: Volkmar Nissen
Latest version: 0.17.0

# modbus2mqtt

[![GitHub release](https://img.shields.io/github/release/modbus2mqtt/server.svg)](https://github.com/modbus2mqtt/server/releases)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

Bridge between Modbus devices and MQTT with automatic Home Assistant discovery.

## Overview

modbus2mqtt enables seamless integration of Modbus devices (RTU/TCP) into your smart home system via MQTT. It features a user-friendly web interface, automatic Home Assistant discovery, and community-driven device specifications.

**Key Features:**
- Web-based configuration UI
- Modbus RTU & TCP support
- MQTT integration with Home Assistant discovery
- Community device specifications
- Real-time monitoring

## Quick Start

### Installation

Choose your preferred method:

- **[Home Assistant Add-on](https://github.com/modbus2mqtt/hassio-addon-repository)** - Direct Home Assistant integration (recommended for Home Assistant users)
- **[Docker](docs/installation-docker.md)** - Recommended for most users
- **[Proxmox LXC](docs/installation-proxmox.md)** - Alpine Linux package for Proxmox containers



### Usage

After installation, access the web interface at `http://localhost:3000` and follow the [Getting Started Guide](docs/getting-started.md).

## Documentation

- **[Getting Started](docs/getting-started.md)** - First steps and basic configuration
- **[Contributing](docs/contributing.md)** - How to contribute to the project
- **[Installation Guides](docs/)** - Detailed installation instructions

For complete documentation, see the [docs/](docs/) directory.

## Contributing

We welcome contributions! See the [Contributing Guide](docs/contributing.md) for details on:
- Setting up your development environment ([Development Guide](docs/development.md))
- Code style and testing requirements
- Submitting pull requests

Quick start for developers:

```bash
git clone https://github.com/modbus2mqtt/server.git
cd server
npm install
npm run build.dev
npm test
```

## Support

- **[Documentation](docs/)** - Comprehensive guides
- **[GitHub Issues](https://github.com/modbus2mqtt/server/issues)** - Bug reports and feature requests
- **[GitHub Discussions](https://github.com/modbus2mqtt/server/discussions)** - Community support

## License

MIT License - see [LICENSE](LICENSE) for details.

---

Built with ❤️ by the modbus2mqtt community
npm package: @modcord/clock
Description: A clock that cycles through routines at certain intervals and fires events with the data originally submited.
Author: MrAugu#7917
Latest version: 1.0.0

# clock
A clock event loop too fire specific events when the cycle is past an unix timestamp.
Basically instead of having tens-hundreds of randomly instantiated timeouts, the clock simply cycles through the routines and emits an event with the initially passed data in a centralised location, increasing maintanability and possibily performance.
npm package: @modcord/collection
Description: A Map with additional utility methods for significantly improved performance and ease-of-use.
Author: MrAugu#7016
Latest version: 1.0.2

# collection-map-js
A Map with additional utility methods to use.

# Help, Issued & Support
If you have encountered a bug with the library, open a pull request

# Methods
The `Collection` extends `Map`.
`collection` is reffered as `const collection = new Collection();` where `Collection` is reffered as `const Collection = require("collection-map-js").Collection;`.

<!--<table style="width:100%">
  <tr>
    <th>Function Name</th>
    <th>Call</th> 
    <th>Description</th>
    <th>Output</th>
  </tr>
  <tr>
    <td>filter</td>
    <td>collection.filter(fn)</td> 
    <td>Filers all elements based on 'fn' function, 'fn' taked the value as parameter. If 'fn(value)' returns true, the value is added to a new collection which is returned at the end of iteration.</td>
    <td>Collection</td>
  </tr>
  <tr>
    <td>clone</td>
    <td>collection.clone()</td> 
    <td>Returns an exact copy of the 'collection'.</td>
    <td>Collection</td>
  </tr>
  </table> -->
  
  ```js
  // [Parameter] means that that parameter is optional, do not include []'s.
  
  collection.filter(function); // function takes in 'value'
  collection.clone(); // returns an exact same copy of current collection
  collection.first([count]); // returns first x or first value of the collection
  collection.firstKey([count]); // returns first x or first key of the collection
  collection.array(); // array of collection values
  collection.last([count]); // returns last x or first value of the collection
  collection.lastKey([count]); // returns last x or first key of the collection
  collection.deleteAll(); // calls delete method on all items of the collection
  collection.every(function); // returns boolean, true if every item of the collection makes function returns true, function takes in 'value'
  collecton.equals(collection2); // return boolean, true if collection2 and collection have a 100% key-vaue pairs matching
  collection.keyArray(); // array of collection keys
  collection.map(); // equal to Array.map();
  collection.partition(function); // returns array of 2 collections, first collection item that passed function and second collection items that failed function ([collection1, collection2] or [passed, failed]), function takes in value
  collection.random([count]); // returns array of 'count' random values from the collection, there can (and will be) duplicates (regardless of array length but more likely count represents a big portion of collection's size)
  collection.randomKeys([count]); // returns array of 'count' random keys from the collection, there can (and will be) duplicates (regardless of array length but more likely count represents a big portion of collection's size)
  collection.some(function); // returns true if at least 1 element of collection passed function, function takes in value
  collection.find(function); // filters the collection and returns the first item value passing function, function takes in value
  ```
npm package: @modcord/unit-converter
Description: Converts metric units to any of their multiples or submultiples.
Author: MrAugu#7917
Latest version: 1.0.2

# Unit Converter
An utility package for ModCord used to convert different metric units to their respectiv multiples and submultiples.

# Usage
```js
const { TimeUnits } = require("@modcord/unit-converter");
const { y, mon, w, d, h, m, s, ms } = TimeUnits;

function getDurationString(amountOfMs) {
  const [years, months, weeks, days, hours, minutes, seconds] = ms.to(y, mon, w, d, h, m, s)(amountOfMs);
  return `${years} years, ${months} months, ${weeks} weeks, ${days} days, ${hours} hours, ${minutes} minutes and ${seconds} seconds`;
}

getDurationString(40753197500);
// 1 years, 3 months, 2 weeks, 1 days, 3 hours, 4 minutes and 0 seconds
```
npm package: @modcreative/wayble-cli
Description: Wayble CLI by Mod Creative, Inc.
Author: Selvin Ortiz
Latest version: 1.0.1

@mod/wayble-cli
===============

Wayble CLI by Mod Creative, Inc.

[![oclif](https://img.shields.io/badge/cli-oclif-brightgreen.svg)](https://oclif.io)
[![Version](https://img.shields.io/npm/v/@mod/wayble-cli.svg)](https://npmjs.org/package/@mod/wayble-cli)
[![Downloads/week](https://img.shields.io/npm/dw/@mod/wayble-cli.svg)](https://npmjs.org/package/@mod/wayble-cli)
[![License](https://img.shields.io/npm/l/@mod/wayble-cli.svg)](https://github.com/selvinortiz/wayble-cli/blob/master/package.json)

<!-- toc -->
* [Usage](#usage)
* [Commands](#commands)
<!-- tocstop -->
# Usage
<!-- usage -->
```sh-session
$ npm install -g @modcreative/wayble-cli
$ wayble COMMAND
running command...
$ wayble (-v|--version|version)
@modcreative/wayble-cli/1.0.1 darwin-x64 node-v12.0.0
$ wayble --help [COMMAND]
USAGE
  $ wayble COMMAND
...
```
<!-- usagestop -->
# Commands
<!-- commands -->
* [`wayble convert`](#wayble-convert)
* [`wayble graph`](#wayble-graph)
* [`wayble help [COMMAND]`](#wayble-help-command)
* [`wayble plot`](#wayble-plot)

## `wayble convert`

Convert SVG to PNG

```
USAGE
  $ wayble convert

OPTIONS
  -f, --file=file      (required) SVG file path to convert to PNG
  -o, --output=output  (required) Path to the PNG output file

EXAMPLE
  $ wayble convert --file="./source/map.svg" --output="./output/map.png"
```

## `wayble graph`

Generate traversable 2D graph from a raster image

```
USAGE
  $ wayble graph

OPTIONS
  -f, --file=file      (required) File path to the raster image
  -o, --output=output  (required) Output path for the generated JSON graph
  -s, --spaces=spaces  [default: 255255255] RGB value that represents open spaces

EXAMPLE
  $ wayble graph --file="./source/image.jpg" --spaces="255255255"
```

## `wayble help [COMMAND]`

display help for wayble

```
USAGE
  $ wayble help [COMMAND]

ARGUMENTS
  COMMAND  command to show help for

OPTIONS
  --all  see all commands in CLI
```

_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v2.2.3/src/commands/help.ts)_

## `wayble plot`

Generate animated SVG path from traversable JSON graph

```
USAGE
  $ wayble plot

OPTIONS
  -f, --file=file  (required) File path to JSON graph
  --end=end        [default: 100,100] End X,Y coordinates
  --start=start    [default: 0,0] Start X,Y coordinates

EXAMPLE
  $ wayble plot --file="./source/graph.json" --start="0,0" --end="100,100"
```
<!-- commandsstop -->
npm package: @moddengine/vue-md-player
Description: Lightweight HTML5 video and audio player component for vuejs
Author: Mahdi Ghanea.g
Latest version: 1.0.7

# vue-md-player

![Build Status](https://github.com/meyt/vue-md-player/actions/workflows/main.yaml/badge.svg?branch=master)

Lightweight HTML5 video and audio player component for Vue@2.

[Demo](https://meyt.github.io/vue-md-player)

## Screenshots

### Video Player

![video player](https://github.com/meyt/vue-md-player/raw/master/stuff/video-player-screenshot.png?raw=true)

### Audio Player

![audio player](https://github.com/meyt/vue-md-player/raw/master/stuff/audio-player-screenshot.png?raw=true)

## Install

```
npm install --save vue-md-player
```


## Usage:

```vue
<template>
  <div>
    <audio-player src="./audio.mp3" />
    <video-player src="./video.mp4" />
  </div>
</template>

<script>
import { audioPlayer, videoPlayer } from 'vue-md-player'
import 'vue-md-player/dist/vue-md-player.css'
export default {
  components: {
    audioPlayer,
    videoPlayer
  }
}
</script>
```