emit_web

Crates.ioemit_web
lib.rsemit_web
version0.2.1
created_at2025-02-17 21:06:07.256924+00
updated_at2025-06-17 04:13:42.29043+00
descriptionInstrument Web-based applications using emit.
homepage
repositoryhttps://github.com/emit-rs/emit_web
max_upload_size
id1559349
size55,929
Ashley Mannix (KodrAus)

documentation

README

emit_web

web

Current docs

Use emit in WebAssembly applications targeting NodeJS and the browser.

emit itself and some emitters, like emit_otlp support WebAssembly directly. This library includes support for emitting events to the Console API. It also has alternative clocks and randomness using different web features. These aren't required for configuration, but can be used to more directly control the JavaScript APIs emit makes use of.

emit_web also supports the wasm32v1-none target.

Getting started

First, add emit and emit_web to your Cargo.toml:

[dependencies.emit]
version = "1"
features = ["std", "implicit_rt"]

[dependencies.emit_web]
version = "0.2.1"

Next, configure emit to use web APIs in its runtime:

use wasm_bindgen::prelude::*;

#[wasm_bindgen]
pub fn setup() {
    let _ = emit::setup()
        .emit_to(emit_web::console())
        .try_init();
}

The name of this setup function doesn't matter, you'll just need to call it somewhere early in your application.

Output

emit_web will output events to the Console API, where they'll appear in browser dev tools.

emit events written to the browser console

Commit count: 9

cargo fmt