StickUp
๐ Launch Note (v0.1.4)
StickUp just quietly launched and already hit over 120 downloads in the first few hours โ huge thanks to everyone checking it out!
If youโre using it for sim gear, custom controllers, or input visualization, Iโd love to hear from you.
Feedback, questions, or contributions? โ belegrade@belegrades.gg
๐ Security Note
The name stickup was previously used in 2023 for a malicious crate which has since been removed from crates.io. (I wasn't aware of this at the time of publishing.)
This version โ authored by Belegrade Studio โ is a clean and fully rewritten project, unrelated to the original.
- โ
No
build.rs - โ No network activity
- โ 100% open and auditable
Transparency and trust matter. You're welcome to inspect the source or reach out directly.
StickUp is a modular, high-performance input abstraction layer for Rust applications.
It handles physical and virtual devices with precision, persistence, and simplicity.
Created by Belegrade Studio. Part of the CelerisTech suite.
โจ Features
- ๐ Plug-and-play device management (
hidapi+ virtual devices) - ๐ฎ Clean
Devicetrait: axis + button abstraction - ๐ง Persistent device identity โ robust rebinding & hotplugging
- ๐ Snapshot state or stream real-time
InputEvents - ๐ง Flexible
BindingProfilesystem to map inputs to actions - โ๏ธ Feature flags (
hid,virtual) to tailor backend support - ๐ก Minimal dependencies. Built for tools, overlays, engines, and more.
๐ฆ Installation
= { = "0.1.4", = ["hid", "virtual"] }
๐ Quick Start
use DeviceManager;
๐งฌ Device Identity
StickUp assigns a stable fingerprint to each device based on its hardware signature:
vendor_id:product_id:serial_number
# Example: 044f:0402:ABCD1234
If the device provides a serial number, this ID is persistent across USB ports, reboots, and sessions โ perfect for rebindings, multi-device setups, and simulators.
๐ Examples
Run with cargo run --example <name>:
poll: Print a snapshot of all connected device statesvirtual_demo: Feed manual input into a simulated device
๐ ๏ธ Optional Features
hid(enabled by default): HID device supportvirtual: Simulated input devices
๐งญ Philosophy
StickUp isnโt just about input. Itโs about clarity, intentional systems, and persistent presence.
Built for tools that know what they're listening to.
๐ License
Licensed under the Pact of the Amaranth Rite. See LICENSE for terms.
Inspired by the MIT license, with deeper philosophical roots.
This crate uses hidapi, licensed under MIT or Apache-2.0.
๐ฌ Connect
- ๐ง Email: belegrade@belegrades.gg
- ๐ฌ Discord: Join Chat
- ๐ ๏ธ Got a weird sim setup or unique controller? Letโs talk.