# mac-notification-sys ![platform](https://img.shields.io/badge/platform-macOS-lightgrey) [![version](https://img.shields.io/crates/v/mac-notification-sys)](https://crates.io/crates/mac-notification-sys/) [![license](https://img.shields.io/crates/l/mac-notification-sys)](https://crates.io/crates/mac-notification-sys/) [![contributors](https://img.shields.io/github/contributors/h4llow3En/mac-notification-sys)](https://github.com/h4llow3En/mac-notification-sys/graphs/contributors) [![build](https://img.shields.io/github/actions/workflow/status/h4llow3En/mac-notification-sys/ci.yml?branch=master)](https://github.com/h4llow3En/mac-notification-sys/actions?query=workflow%3A"Continuous+Integration") ![downloads](https://img.shields.io/crates/d/mac-notification-sys) [![documentation](https://img.shields.io/badge/docs-latest-blue.svg)](https://docs.rs/mac-notification-sys/)
A simple wrapper to deliver or schedule macOS Notifications in Rust. ## Usage ```toml #Cargo.toml [dependencies] mac-notification-sys = "0.6" ``` ## Documentation The documentation can be found [here](https://h4llow3en.github.io/mac-notification-sys/mac_notification_sys/) ## Example ```rust use mac_notification_sys::*; fn main() { let bundle = get_bundle_identifier_or_default("firefox"); set_application(&bundle).unwrap(); send_notification( "Danger", Some("Will Robinson"), "Run away as fast as you can", None, ) .unwrap(); send_notification( "NOW", None, "Without subtitle", Some(Notification::new().sound("Blow")), ) .unwrap(); } ``` ## TODO - [ ] Add timeout option so notifications can be auto-closed - [ ] Allow NSDictionary to hold various types (perhaps with a union?) - [ ] Switch to UserNotification if possible ## Contributors Thanks goes to these wonderful people: - [@hoodie](https://github.com/hoodie) - [@PandawanFr](https://github.com/PandawanFr) - [Didrik Nordström](https://github.com/betamos) Any help in form of descriptive and friendly [issues](https://github.com/h4llow3En/mac-notification-sys/issues) or comprehensive pull requests are welcome! Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in mac-notification-sys by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions. ### Conventions The Changelog of this library is generated from its commit log, there any commit message must conform with https://www.conventionalcommits.org/en/v1.0.0/. For simplicity you could make your commits with [convco](https://crates.io/crates/convco).