# Hyprland-rs
[](https://crates.io/crates/hyprland)

[](https://www.gnu.org/licenses/gpl-3.0.html)
[](https://docs.rs/hyprland)
[](https://github.com/hyprwm/Hyprland)
[](https://discord.gg/zzWqvcKRMy)
An unofficial rust wrapper for Hyprland's IPC
## Disclaimer
If something doesn't work, doesn't matter what,
make sure you are on the latest commit of Hyprland before making an issue!
## Getting started!
Let's get started with Hyprland-rs!
### Adding to your project
Add the code below to the dependencies section of your Cargo.toml file!
```toml
hyprland = "0.3.3"
```
#### Master version
If Hyprland-rs is broken (or other reason) and is taking too long for a release to come out,
you can use the master branch in Cargo (will not allow the crate to be published to `crates.io`):
```toml
hyprland = { git = "https://github.com/hyprland-community/hyprland-rs", branch = "master" }
```
### What this crate provides
This crate provides 6 modules (+1 for shared things)
- `data` for getting information on the compositor
- `event_listener` which provides the `EventListener` struct for listening for events
- `dispatch` for calling dispatchers
- `keyword` for dealing with config option (aka keywords)
- `config::binds` for changing binds (in future `config` might have config generation)
- `ctl` for calling hyprctl commands
## Example Usage
Check the examples in the [`src/bin/` directory](https://github.com/hyprland-community/hyprland-rs/tree/master/examples)