API Reference luminous v1.3.0



This module contains a set of components that can be used to create a dashboard.

A dashboard is a high-level component initialized by the dashboard live view. It contains all the necessary dashboard attributes such as the panels, variables and the time range selector. It is initialized at compile time using define/3 and populated at runtime using populate/1.

This module demonstrates the functionality of a dashboard using Luminous.Live.

This is where we implement the Luminous.Query behaviour, i.e. all queries that will be visualized in the dashboard's panels (a panel can have multiple queries).

This is where we implement the Luminous.Variable behaviour, i.e. define the dashboard's variables displayed as dropdowns in the view

This module contains a macro that contains the functionality of a dashboard LiveView. For more information see Luminous.Dashboards.DemoDashboardLive.

A panel represents a single visual element (chart) in a dashboard contains many queries.

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 struct collects all the attributes that apply to a particular Dataset. It is specified in the attrs argument of Luminous.Query.Result.new/2.

A query Result wraps a columnar data frame with multiple variables. attrs is a map where keys are variable labels (as specified in the query's select statement) and values are keyword lists with visualization properties for the corresponding DataSet. See Luminous.Query.DataSet.new/3 for details.

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 represents the widget in the dashboard that allows for selecting a time range/period. It is defined at compile time and populated at compile time (current value). It can also be updated with a new value.

A variable is defined at compile time and its values are determined at runtime. It also stores a current value that can be updated. A variable value is descriptive in that it contains a label (for display purposes) and the actual value.