# Buttplug
[](https://www.patreon.com/qdot)
[](https://www.github.com/sponsors/qdot)
[](https://discord.buttplug.io)
[](https://twitter.com/buttplugio)
[](https://crates.io/crates/buttplug)
[](https://crates.io/crates/buttplug)
[](https://crates.io/crates/buttplug)
Main repo for the Buttplug project, including the protocol spec, device config, and a full Rust implementation of the Buttplug Intimate Hardware Control Protocol.
This repo is a monorepo with multiple projects, including:
- [Buttplug Protocol Specification](spec/) - Protocol spec and docs
- [buttplug-schema](buttplug/buttplug-schema) - JSON schema for the Buttplug protocol spec
- [buttplug-device-config](buttplug/buttplug-device-config) - Device configuration file for buttplug (where we store all of the device identifiers)
- [buttplug](buttplug/) - Rust implementation of the Buttplug protocol spec
- [buttplug_device](buttplug_derive/) - Procedural macros used by the buttplug rust library.
For information about compiling and using these libraries, please check the
README files in their directories.
For a list of applications using Buttplug, see the [awesome-buttplug repo](https://github.com/buttplugio/awesome-buttplug).
## Other Language Implementations
See the [awesome-buttplug repo](https://github.com/buttplugio/awesome-buttplug) for a full list of implementations.
- [Buttplug C#](https://github.com/buttplugio/buttplug-rs-ffi/tree/master/csharp)
- [Buttplug JS/Typescript/WASM](https://github.com/buttplugio/buttplug-rs-ffi/tree/master/js)
- [Buttplug Python](https://github.com/buttplugio/buttplug-py)