I am happy to introduce a little project I’ve been working on: Oblog.
As mentioned in the title, Oblog is an annotation-driven API for interacting with Shuffleboard. It removes the need for teams to use the verbose builder API, which becomes cumbersome and error-prone when a sufficiently large amount of telemetry data needs to be send to Shuffleboard.
Oblog works recursively on Loggable
classes to populate Shuffleboard with tabs, layouts, and sublayouts, and then to populate those tabs/layouts with values from annotated fields and getters. The API is very simple, and should be accessible for new and veteran teams alike.
For more information, check out the docs.
I hope that Oblog will encourage teams to log more of their data by lowering the barrier-to-entry to recording large amounts of data in a sensible format!
Feedback is welcome, and I hope teams find this tool useful! New features (including a similar annotation-driven API for mapping setters to interactive Shuffleboard widgets) are planned for the near future, as well.