Expand description
§System Theme

A cross-platform Rust library to help build native-looking applications.

It provides access (when supported by the platform) to:
- System theme kind (Windows, macOS, GTK, or Qt)
- System theme scheme (light or dark)
- System contrast level (normal or high)
- System accent color
It also includes predefined theme palettes designed to match native applications.
§Roadmap
🚧 Platforms
🟢 Windows
🟢 macOS
🟢 XDG (Linux, FreeBSD, etc.)
🟢 GTK (e.g. GNOME)
🟢 Qt (e.g. KDE)
🔴 Web
🔴 Android
🔴 iOS
🚧 Theming
🚧 Default OS themes (Fluent, Aqua, Adwaita, Breeze)
🟢 Palette
🔴 Widget Themes (buttons, etc)
🟢 Subscription to theme changes (async)
🟢 Windows
🟢 XDG (Linux, FreeBSD, etc.)
🟢 macOS
🚧 Integrations
🚧 Iced (feature: iced)
🟢 Palette
🟢 App Theme
🔴 Widget Themes
§License
System theme is licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
§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 dual licensed as above, without any additional terms or conditions.
Modules§
- error
- Error module for system theme operations.
Structs§
- System
Theme - System theme implementation.
- Theme
- Theme
- Theme
Color - Theme color
- Theme
Palette - Theme Palette
Enums§
- Theme
Contrast - Theme contrast
- Theme
Kind - Theme kind
- Theme
Scheme - Theme scheme