log4wasm


:sparkles: A rust-generated wasm logging utility with styling capabilities for display in a web console.

> Be advised that this crate is still considered experimental however should be stable for use in its current state. output of generated example log # Getting started You can start using `log4wasm` by adding the following in your Cargo.toml `[dependencies]` section: ```toml log4wasm = "0.1.3" ``` **Note**: `log4wasm` relies on the [wasm-bindgen](https://github.com/rustwasm/wasm-bindgen) crate for code-generation therefore it is the current recommended approach for building reliably. # Example A minimal use-case within your application would look something like the following: ```rust fn main() { log4wasm::log::info!("A basic, unformatted log with a level of INFO."); } ``` `log4wasm` provides a suite of macros out of the box available for use. These may be favorable in instances where building a custom logger is not necessary. ```rust log4wasm::log::trace!("a basic trace log!"); log4wasm::log::debug!("a basic debug log!"); log4wasm::log::info!("a basic info log!"); log4wasm::log::warning!("a basic warn log!"); log4wasm::log::error!("a basic error log!"); log4wasm::log::fatal!("a basic fatal log!"); ``` Alternatively, custom loggers may be created using the designated builder: ```rust use log4wasm::logger::{Level, Logger}; use log4wasm::styled::{Color, Decoration, Styled}; // Create a custom logger with a desired name and log level. let logger = Logger::new_builder() .named("MAIN") .with_level(Level::Debug) .build(); // Create a styling to be applied on the output written to console. let styled_log = Styled::with_content(format!("A formatted debug log named \"MAIN\" with green, underlined text and an argument of {}", 1)) .colored(Color::Green) .decorate(Decoration::Underline) .into_log(); // Write the styled output to console. logger.print_fmt(styled_log); ```