API Reference luminous v2.6.1



Attributes map variable values (user-defined) to attribute keyword lists. They are created by parsing and validating a NimbleOptions schema (see parse/2).

Attribute schemas that are common across all instances of their type.

Phoenix function components for visualizing a dashboard and its constituent components.

A dashboard is the highest-level luminous component and contains all the necessary dashboard attributes such as the panels, variables and the time range selector. It also stores the state of the panels (query results). The dashboard is initialized in Luminous.Live and populated at runtime using populate/2.

This module defines a macro that contains the functionality of a dashboard LiveView. It needs to be used (use Luminous.Live) inside a client application module with the appropriate options (as specified in Luminous.Dashboard.define!/1).

A panel represents a single visual element (chart) in a dashboard that can contain many queries. A panel is "refreshed" when the live view first loads, as well as when a variable or the time range are updated. The panel's data (as returned by the queries) are stored in Luminous.Dashboard.

A query is embedded in a panel and contains a function which will be executed upon panel refresh to fetch the query's data.

This module defines a struct with two fields (:from and :to) to represent a time range. Additionally, various helper functions are defined that operate on time ranges.

A selector supports the widget in the dashboard that allows for selecting a time range/period. It can also be updated with a new value.

Various utility functions.

A variable is defined inside a Dashboard and its values are determined at runtime. The variable also stores a current value that can be updated. A variable value can be simple (just a value) or descriptive in that it contains a label (for display purposes) and the actual value.