Skip to content

An API that serves data from Pixels Dice to DynDash applications

License

Notifications You must be signed in to change notification settings

KiljanK/pixels-dyndash-api

Repository files navigation

pixels-dyndash-api

This is a simple express.js server that acts as a hub for storing dice information from the electronic Pixels Dice and serving them under the API specification that makes the data available to any connected DynDash application.


Structure

The application relies on connecting to the dice via the Web Bluetooth API. This API is only available in Chromium-based browsers, which means that a dedicated window from one of these browsers has to be open in the background for the connection to remain active. This window makes use of the official packages provided by systemic and follows the developer's guide.

Structure_Graph


Screenshots

The provided Component should be able to display Sources of the Data Type digitalDice. It lists all rolls that have occurred since the dice were connected and highlights critical failures and successes in customizable colors. New rolls will be added when they occur. While rolling dice, a spinning dice icon is shown and the list automatically scrolls to the most recent rolls. When hovering over it, the Component also shows battery status and charging state, and allows for the removal of the most recent roll. Component_Screenshot


Installation

Run the following command for installation

npm install

You may need to extend the safelist of the tailwind.config.js inside your DynDash application with the following lines, depending on the version of your installation:

{
  pattern: /.*(translate|top|right|left|bottom|animate).*/,
},

Running the Application

Run the following command to start the application

npm start

Visit the application's frontend in a Chromium-based browser and follow the instructions there. The connection process usually requires only a few button presses.

Connect to a running DynDash application by pasting the URL http://localhost:4416/ into its Config Editor and hitting the + button, followed by the Save button. You should be able to select all of the things you want the application to provide (refresh the page if you aren't able to do so).

Note

Dice provided by this provider can be used in the Components of the 5e-combat-dyndash-api, since both providers use the same digitalDice Data Type.


Development Status

Currently, I cannot ensure that the application is able to handle multiple dice at the same time, as I have only received one of my dice from the Kickstarter. As soon as the shipping situation is solved and I have received all of my dice, I will try to update this project accordingly.


License

The project is licensed under the GNU AGPL v3 License


About

An API that serves data from Pixels Dice to DynDash applications

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published