Assertion helpers with built-in logging powered by better-logger
See better-logger before you use this crate
better-assertincorporatesbetter-loggeras its logging facade. Any project usingbetter-assertmust do the same.
better-loggerhas terminal, file, and network logging functionality.
| Scenario | Pain point with plain assert! | How better-asserthelps | 
|---|---|---|
| WASM front-end | An assert_eq!fails silently in a user’s browser, you never see it | log_assert_eq()sends a log entry to your backend before the panic | 
| Headless server / embedded | A panic!crash disappears into/dev/nullor an unknown serial console | log_panic()sends the details to a file, syslog, or over-the-wire sink | 
/* no default feature enabled (enabling both at once won't compile) */
better-assert = { version = "0.3.2", features = ["native"] }
better-assert = { version = "0.3.2", features = ["wasm"] }See the better-logger docs for the quick-start
/* Also has no default feature enabled (enabling both at once won't compile) */
better-logger = { version = "1.0.3", features = ["native"] }
better-logger = { version = "1.0.3", features = ["wasm"] }use better_assert::*;
let left = "value".to_string();
let right = "value".to_string(); 
log_assert_eq(&left, &right); // enabled in all builds
log_assert_ne(&left, &right);
debug_log_assert_eq(&left, &right); // enabled only in debug builds
debug_log_assert_ne(&left, &right);
log_panic(); // always logs, then panics© 2025 Gistyr LLC
This project, better-assert, is dual-licensed under your choice of:
- Apache License 2.0
 See the LICENSE-APACHE file or view it online at http://www.apache.org/licenses/LICENSE-2.0
- MIT License
 See the LICENSE-MIT file or view it online at http://opensource.org/licenses/MIT