Expand description
§mni - A World-Class Minifier
A high-performance minifier for JavaScript, CSS, and JSON written in Rust.
Built on industry-leading libraries:
- JavaScript: SWC (powers Next.js, Deno, Vercel)
- CSS:
LightningCSS(100x faster than cssnano, powers Parcel) - JSON:
serde_json(Rust standard)
§Features
- Production-Ready: Built on battle-tested libraries
- Blazing Fast: SWC +
LightningCSSperformance - High Compression: Terser-level minification quality
- Multi-format: JavaScript (ES5-ESNext), CSS, JSON
- Source Maps: Source map generation for JS (via SWC) and CSS (via
LightningCSS)
§Example
use mni::{Minifier, MinifyOptions, Target};
let code = r#"
function hello(name) {
console.log("Hello, " + name + "!");
}
"#;
let options = MinifyOptions {
target: Target::ES2015,
mangle: true,
compress: true,
..Default::default()
};
let minified = Minifier::new(options).minify_js(code).unwrap();
println!("{}", minified.code);Re-exports§
pub use config::MinifyOptions;pub use config::Target;
Modules§
- config
- Configuration options for minification.
- minify
- Minification implementations for different formats
Structs§
- Minifier
- Main minifier interface that provides methods to minify JavaScript, CSS, and JSON.
- Minify
Result - Result of a minification operation containing the minified code, optional source map, and statistics.
- Minify
Stats - Statistics collected during the minification process.