deckster/README.md
2024-07-09 22:26:49 +02:00

1.4 KiB
Raw Blame History

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.