# nodejs-ecal

> Node.js wrapper for eCAL

Latest version **1.1.2** (published 2022-09-30) · MIT license · 0 weekly downloads

## Install

```sh
npm install nodejs-ecal
pnpm add nodejs-ecal
yarn add nodejs-ecal
bun add nodejs-ecal
```

## Health

**Score 25/100 (F)** — status: abandoned.

Positive: has types; no vulnerabilities; high quality score.

Warnings: low downloads; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.1.2 |
| Published | 2022-09-30 |
| First published | 2022-09-19 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 3 |
| Unpacked size | 48.5 KB |
| Known vulnerabilities | 0 |
| Install scripts | yes |
| GitHub stars | 2 |
| Author | aeon0 |
| Maintainers | j-o-d-o |
| Keywords | ecal, ipc, sockets, communication |

## Links

- npm: https://www.npmjs.com/package/nodejs-ecal
- Repository: https://github.com/aeon0/nodejs-ecal
- Homepage: https://github.com/aeon0/nodejs-ecal#readme
- Issues: https://github.com/aeon0/nodejs-ecal/issues
- npm.io page: https://npm.io/package/nodejs-ecal

## Dependencies (3)

- [bindings](https://npm.io/package/bindings.md) ^1.5.0
- [cmake-js](https://npm.io/package/cmake-js.md) ^6.3.2
- [node-addon-api](https://npm.io/package/node-addon-api.md) ^5.0.0

## Alternatives

- [@opentelemetry/exporter-zipkin](https://npm.io/package/@opentelemetry/exporter-zipkin.md) — 14.8M weekly downloads
- [pusher-js](https://npm.io/package/pusher-js.md) — 2.0M weekly downloads
- [browserify](https://npm.io/package/browserify.md) — 1.7M weekly downloads
- [sqs-consumer](https://npm.io/package/sqs-consumer.md) — 1.7M weekly downloads
- [@sanity/eventsource](https://npm.io/package/@sanity/eventsource.md) — 930.8K weekly downloads

## Recent versions

- 1.1.2 (latest) — 2022-09-30
- 1.1.1 — 2022-09-27
- 1.1.0 — 2022-09-27
- 1.0.5 — 2022-09-21
- 1.0.4 — 2022-09-20
- 1.0.3 — 2022-09-19

## README

# Nodejs-eCal

eCAL wrapper for Nodejs. Check out ecal here: https://github.com/eclipse-ecal/ecal.

## Dependencies
CMake, some compiler, protobuf and eCAL musst be installed on the system. See docs: https://eclipse-ecal.github.io/ecal/getting_started/setup.html

```bash
# Linux
sudo add-apt-repository ppa:ecal/ecal-latest
sudo apt-get update
sudo apt-get install ecal cmake g++ libprotobuf-dev protobuf-compiler
```

## Usage
```bash
npm install -s nodejs-ecal
```
Note that only communication with ArrayBuffers is supported. This is because specific interface description (e.g. for protobuf) would need to be known at compile time as node addons ship as dynamic libs. That means on Node.js side the user has to take care of data serialization.


Current features the wrapper includes are: Client, Server, Publisher, Subscriber.
For examples check the [examples](examples/) folder.

## Dev
Project is using cmake-js: https://github.com/cmake-js/cmake-js.
```bash
# Install dependencies (nodejs must be installed)
npm install
# optional to use cmake-js command in terminal
npm install -g cmake-js

# Build
npm run install

# Test
npm run test

# Publish new versions
npm login
npm publish
```

---
_Source: https://npm.io/package/nodejs-ecal · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
