4 releases
new 0.2.0 | Dec 20, 2024 |
---|---|
0.1.2 | Dec 18, 2024 |
0.1.1 | Dec 18, 2024 |
0.1.0 | Dec 18, 2024 |
#375 in Hardware support
117 downloads per month
16KB
221 lines
razerctl
A Rust port of the original rzctl project, allows you to control your mouse with Razer Synapse
Requirements
- Windows operating system
- Rust 1.56 or higher
Safety
This crate uses unsafe
code for Windows API interactions but provides safe abstractions for users. All unsafe operations are thoroughly documented and contained within the implementation.
Features
- ✅ Currently supports mouse movement/clicking
- ❌ No support for keyboard yet
Installation
In your root project folder, run the following to add razerctl to your dependencies.
cargo add razerctl
Quick Start
use std::io::Error;
use razerctl::{init, mouse_move};
fn main() -> Result<(), Error> {
// Initialize with default settings
init()?;
// Move mouse to coordinates (100, 100)
mouse_move(100, 100, true)?;
Ok(())
}
Examples
Run the included examples:
# Fast mouse movement demo
cargo run --example mouse_click
# Basic mouse movement demo
cargo run --example mouse_move1
# Fast mouse movement demo
cargo run --example mouse_move2
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License.
Dependencies
~0–35MB
~523K SLoC