113 releases (67 stable)

new 3.0.0-alpha.18 Nov 7, 2024
3.0.0-alpha.12 Sep 23, 2024
3.0.0-alpha.7 Jul 23, 2024
3.0.0-alpha.0 Mar 20, 2024
0.1.0 Nov 30, 2017

#660 in Procedural macros

Download history 142309/week @ 2024-07-18 140076/week @ 2024-07-25 144319/week @ 2024-08-01 129796/week @ 2024-08-08 134835/week @ 2024-08-15 121327/week @ 2024-08-22 96648/week @ 2024-08-29 95215/week @ 2024-09-05 90486/week @ 2024-09-12 101225/week @ 2024-09-19 104235/week @ 2024-09-26 101230/week @ 2024-10-03 89134/week @ 2024-10-10 73954/week @ 2024-10-17 68637/week @ 2024-10-24 71368/week @ 2024-10-31

319,992 downloads per month
Used in 55 crates (43 directly)

MIT license

205KB
6K 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

~0.6–1.1MB
~23K SLoC