🎛️ A Loupedeck driver library in Rust + a declaratively configured host application
Find a file
2024-07-09 22:44:58 +02:00
crates Update dependencies, allow changing the screen brightness dynamically 2024-06-17 13:25:17 +02:00
examples commit 2024-03-06 22:45:24 +01:00
handlers Remove knobs from the home_assistant handler 2024-06-20 14:32:02 +02:00
src Update dependencies, allow changing the screen brightness dynamically 2024-06-17 13:25:17 +02:00
.gitignore commit 2024-02-28 16:48:01 +01:00
Cargo.lock Update dependencies, allow changing the screen brightness dynamically 2024-06-17 13:25:17 +02:00
Cargo.toml Update dependencies, allow changing the screen brightness dynamically 2024-06-17 13:25:17 +02:00
Cross.toml commit 2024-03-02 00:52:56 +01:00
LICENSE.md Initial commit 2023-12-28 18:39:46 +01:00
README.md Update README.md 2024-07-09 22:44:58 +02:00
rustfmt.toml WIP: Add parsing of image filter strings 2023-12-30 02:16:23 +01:00

deckster

A custom Loupedeck driver and declarative backend written in Rust.

To do

  • Make the playerctl handler independent of… playerctl. Use the mpris crate directly instead.
  • Implement scrolling
  • Move loupedeck_serial and pa_volume_interface out of this repository.
  • Publish libraries to crates.io
  • Move handlers to their own repositories

Contributing

Terminology

  • handler runner: Node that is running handlers.
  • handler host: A handler runner that is not the coordinator.
  • coordinator: Node to which the Loupedeck device is physically connected. Can be a handler runner.

The different types of unwrap

  • expect("<reason>"): The author thinks that unwrapping will never fail because of <reason>.
  • unwrap(): The author assumes that unwrapping will never fail but explaining why is either obvious or too complicated and its obvious why.
  • unwrap_todo(): The author has not yet thought about how to handle this value being None or Err. They will replace this unwrapping with expect("<reason>"), unwrap(), or proper error handling later.

Credits

foxxyzs loupedeck library for JavaScript (licensed under the MIT license) was used as a reference for and inspired the design of loupedeck_serial.