14 releases
| 0.2.2 | Nov 25, 2025 |
|---|---|
| 0.2.0 | Aug 24, 2025 |
| 0.1.10 | Jul 16, 2025 |
| 0.1.8 | Mar 24, 2025 |
| 0.1.3 | Nov 30, 2024 |
#106 in GUI
15,704 downloads per month
Used in 5 crates
(3 directly)
155KB
3K
SLoC
mundy 🐋
Your friendly neighbourhood whale crate for reading various system-level
accessibility and UI preferences across platforms 🐋
The following preferences are supported:
AccentColor—The user's current system wide accent color preference.ColorScheme—The user's preference for either light or dark mode.Contrast—The user's preferred contrast level.ReducedMotion—The user's reduced motion preference.ReducedTransparency—The user's reduced transparency preference.DoubleClickInterval—The maximum amount of time allowed between the first and second click.
Example
use mundy::{Preferences, Interest};
use futures_lite::StreamExt as _;
// Interest tells mundy which preferences it should monitor for you.
// use `Interest::All` if you're interested in all preferences.
let mut stream = Preferences::stream(Interest::AccentColor);
async {
while let Some(preferences) = stream.next().await {
eprintln!("accent color: {:?}", preferences.accent_color);
}
};
Docs
Examples
License
Licensed under the Apache License, Version 2.0 (license.txt or http://www.apache.org/licenses/LICENSE-2.0)
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be licensed as above, without any additional terms or conditions.
Dependencies
~0.2–49MB
~700K SLoC