84 releases (stable)

new 3.0.0-alpha.0 Mar 20, 2024
2.16.1 Mar 26, 2024
2.16.0 Feb 28, 2024
2.14.6 Dec 27, 2023
0.1.0 Nov 30, 2017

#588 in Procedural macros

Download history 93872/week @ 2023-12-05 169068/week @ 2023-12-12 127748/week @ 2023-12-19 88028/week @ 2023-12-26 160483/week @ 2024-01-02 156262/week @ 2024-01-09 133461/week @ 2024-01-16 121666/week @ 2024-01-23 136006/week @ 2024-01-30 134031/week @ 2024-02-06 127440/week @ 2024-02-13 114173/week @ 2024-02-20 114389/week @ 2024-02-27 117982/week @ 2024-03-05 124404/week @ 2024-03-12 106342/week @ 2024-03-19

480,491 downloads per month
Used in 33 crates (25 directly)

MIT license

180KB
5K SLoC

napi-derive

chat

Checkout more examples in examples folder

#[macro_use]
extern crate napi_derive;
use napi::bindgen_prelude::*;

#[napi]
fn fibonacci(n: u32) -> u32 {
  match n {
    1 | 2 => 1,
    _ => fibonacci_native(n - 1) + fibonacci_native(n - 2),
  }
}

#[napi]
fn get_cwd<T: Fn(String) -> Result<()>>(callback: T) {
  callback(env::current_dir().unwrap().to_string_lossy().to_string()).unwrap();
}

Dependencies

~1–2MB
~37K SLoC