nodejs-sys

Crates.ionodejs-sys
lib.rsnodejs-sys
version0.15.0
sourcesrc
created_at2019-05-06 16:48:47.753339
updated_at2023-04-22 08:04:01.823702
descriptionNative bindings to the nodejs' n-api
homepage
repositoryhttps://github.com/elmarx/nodejs-sys
max_upload_size
id132413
size53,299
Elmar Athmer (elmarx)

documentation

README

Rust build crates.io badge docs.rs badge

nodejs-sys

Bindings for NodeJS' N-API.

Requirements

This crate needs llvm at build-time, since it generates bindings at build-time (by using bindgen).

For Debian/Ubuntu that's a simple apt install llvm libclang-dev.

Features

Different API versions may be selected via feature-flag. See the N-API Version Matrix for details.

  • napi_v5 supported by all actively maintained NodeJS releases
  • napi_v6 supported by all actively maintained NodeJS releases
  • napi_v7 supported by all actively maintained NodeJS releases
  • napi_v8 requires at least 15.12.0, this is the default (if no flag is given)
  • the experimental N-API features may be enabled via feature flag experimental (off by default)

Updates

Not all NodeJS Versions change the N-API, so nodejs-sys gets an update only if the relevant headers have been changed between node versions.

See the (autogenerated) changelog for links to detailed upstream commits.

Usage

This crate is very low-level. See neon, they provide N-API Support.

But of course you may also use this crate directly, LogRocket has a nice blog post: Rust and Node.js: A match made in heaven.

Commit count: 74

cargo fmt