use rustyscript::{Error, Module, Runtime, RuntimeOptions};
fn main() {
if let Err(e) = run() {
eprintln!("Error: {e}");
}
}
fn run() -> Result<(), Error> {
let module = Module::new(
"test.js",
r#"
// From the node standard library (Deno polyfills)
import os from "os";
// From npm
import chalk from "npm:chalk@5";
export function print_hostname() {
console.log("Getting hostname from node:os:");
console.log(chalk.blue(os.hostname()));
}
"#,
);
let mut runtime = Runtime::new(RuntimeOptions::default())?;
runtime.set_current_dir("examples/node_import")?;
let module_handle = runtime.load_module(&module)?;
runtime.call_function::<()>(Some(&module_handle), "print_hostname", &())?;
Ok(())
}