| Crates.io | owo-colors |
| lib.rs | owo-colors |
| version | 4.2.2 |
| created_at | 2020-08-25 06:21:49.001141+00 |
| updated_at | 2025-06-24 05:33:28.318255+00 |
| description | Zero-allocation terminal colors that'll make people go owo |
| homepage | |
| repository | https://github.com/owo-colors/owo-colors |
| max_upload_size | |
| id | 280389 |
| size | 185,925 |
A zero-allocation no_std-compatible zero-cost way to add color to your Rust terminal to make people go owo.
Supports:
NO_COLOR/FORCE_COLOR environment variablesset_overrideconstowo-colors is also more-or-less a drop-in replacement for colored, allowing colored to work in a no_std environment. No allocations or dependencies required because embedded systems deserve to be pretty too uwu.
To add to your Cargo.toml:
owo-colors = "4"
use owo_colors::OwoColorize;
fn main() {
// Foreground colors
println!("My number is {:#x}!", 10.green());
// Background colors
println!("My number is not {}!", 4.on_red());
}
use owo_colors::OwoColorize;
use owo_colors::colors::*;
fn main() {
// Generically color
println!("My number might be {}!", 4.fg::<Black>().bg::<Yellow>());
}
use owo_colors::OwoColorize;
println!("{}", "strikethrough".strikethrough());
use owo_colors::{OwoColorize, Stream::Stdout};
println!(
"{}",
"colored blue if a supported terminal"
.if_supports_color(Stdout, |text| text.bright_blue())
);
Supports NO_COLOR/FORCE_COLOR environment variables, checks if it's a tty,
checks if it's running in CI (and thus likely supports color), and checks which
terminal is being used. (Note: requires supports-colors feature)
The MSRV of owo-colors is Rust 1.70.
This library has a conservative MSRV policy — Rust versions from the last 12 months will be supported (features available in newer versions will be gated by build.rs), the MSRV will only be bumped if required, and if the MSRV is bumped it will always occur with a new minor version.