https://github.com/ccuqme/inputsimulator
Linux AutoClicker for both Keyboard and Mouse
https://github.com/ccuqme/inputsimulator
autoclicker input-simulator libcosmic linux-app
Last synced: 9 months ago
JSON representation
Linux AutoClicker for both Keyboard and Mouse
- Host: GitHub
- URL: https://github.com/ccuqme/inputsimulator
- Owner: ccuqme
- License: mit
- Created: 2025-01-05T18:35:44.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-10T09:43:19.000Z (about 1 year ago)
- Last Synced: 2025-05-10T10:31:10.855Z (about 1 year ago)
- Topics: autoclicker, input-simulator, libcosmic, linux-app
- Language: Rust
- Homepage:
- Size: 57.6 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Linux AutoClicker for Keyboard and Mouse

This tool automates repetitive key presses and mouse clicks at customizable intervals. You can easily set up specific keys or mouse buttons to simulate and toggle the simulation on or off using a global hotkey.
## Features
- **Configurable Key Behavior**:
- Hold:
- Continuous: Hold all keys down simultaneously until stopped.
- Cycle: Press each key sequentially, holding each for the specified interval.
- Click: Simulate keys being pressed and released repeatedly at a set interval.
- **Modifier Behavior**:
- Click: Press and release modifier keys separately from regular keys.
- Hold: Press modifier keys together with regular keys.
- **Global Hotkeys**:
- Assign a hotkey to toggle the simulation on or off (default: `F8`).
## Compatibility
- **Platforms**: Made for Linux, untested and unsupported on anything else.
- **Desktop Environments**: Tested on KDE Plasma 6.3.4 and COSMIC Desktop Alpha 7.1.
## Known Issues
- Global hotkeys **do not work** with pure Wayland applications on the COSMIC Desktop, but they work fine with Xwayland applications (e.g., Steam and games running through Proton).
- The application starts with a phantom winit window. This is a minor issue that may be addressed in the future.
## Building from Source
To build the application from source, you need to have Rust and Cargo installed. Follow these steps:
1. Clone the repository:
```sh
git clone https://github.com/ccuqme/inputsimulator.git
cd inputsimulator
```
2. Build the application:
```sh
cargo build --release
```
3. The built executable will be located in the `target/release` directory.
## Dependencies
- [libcosmic](https://github.com/pop-os/libcosmic)
- [evdev-rs](https://crates.io/crates/evdev-rs)
- [device_query](https://crates.io/crates/device_query)
- [serde](https://crates.io/crates/serde)
- [thiserror](https://crates.io/crates/thiserror)
- [log](https://crates.io/crates/log)
- [regex](https://crates.io/crates/regex)
- [smol](https://crates.io/crates/smol)
## Contributing
This is a personal project primarily made for my own use, but suggestions and contributions are always welcome! If you have ideas, encounter bugs, or want to improve the app, feel free to open an issue or submit a pull request.
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
### Third-Party Licenses
This application relies on third-party dependencies, which may be licensed differently. For details, refer to the [THIRD_PARTY_LICENSES.txt](THIRD_PARTY_LICENSES.txt) file.