Be careful with the content of these custom files because the deployment can cause security vulnerability of Graphlytic. Be sure to know what custom widget is being deployed and that you trust the source of the code.
Custom widget deployment
Prepare your widget files. Supported file extensions are: CSS, HTML, JS
Choose widget ID (e.g. myWidget). Do not use "_" as prefix.
Name your files using your widget ID, e.g. "myWidget.css", "myWidget.html" and "myWidget.js". You can have only 1 file of each type (CSS, HTML, JS) but you don't need to have all types, so your widget can be only the JS file when you don't need custom HTML and CSS functionality.
There is no need to stop Graphlytic.
Upload the widget files to the "widgets" directory. Location of the directory is configurable in <GRAPHLYTIC_HOME>/conf/graphlytic.conf.
Option A - manual upload
Create a subdirectory in the "widgets" directory using your widget ID as the subdirectory name, e.g. "myWidget".
Copy prepared files into the created subdirectory.
Enable and configure the widget in Widgets settings.
Option B - upload using the REST API
Open the Swagger UI
Locate the "Widgets" group and use the POST /widgets endpoint to upload a zip file with the widget's folder and files