Summary
Tabs group widgets by theme; a tab can hold sub-tabs. A widget comes either from a plugin in the catalogue or from your own code; you configure it with a live preview. Widgets then sit on a grid where you move and resize them in edit mode.
Tabs
A tab is a page of the dashboard. Create as many as you have themes to separate — say a Demographics tab, a Labs tab, a Stays tab. The + button that adds a tab only appears in edit mode (the pencil icon in the toolbar); once in edit mode, each tab can be renamed and reordered.
Tabs and sub-tabs
A tab can hold sub-tabs (one level of nesting). As soon as a tab has sub-tabs, it becomes a container: it no longer holds widgets itself — its sub-tabs do. Handy for grouping several related views under one heading.
Adding a widget
Inside a tab (or a sub-tab), click Add a widget. The dialog first asks for a name and a dataset (the data the widget will work on), then offers two ways to produce the content, shown as tabs:
Add a widget
Choose a widget to add to the active tab.
Scatter, line, bar, histogram, boxplot, violin.
Aggregate value, icon and optional mini-chart.
Descriptive statistics: counts, %, means, medians, IQR.
Kaplan-Meier: curves, log-rank, median, at-risk table.
- Plugin — pick a widget from a catalogue. Linkr ships a library of ready-made plugins (Table 1, key indicator, plots, survival, regression…), marked with a
REACTbadge. The details are on the Built-in widgets page. You can also install your own plugins (see Build a plugin). - Custom code — write your own R, Python or SQL code for bespoke output (see R, Python and SQL code).
Several datasets in one dashboard
Each widget works on one dataset, but a dashboard is not limited to a single one: different widgets can rely on different datasets. You pick each widget’s dataset when you create it. To avoid re-selecting it every time, a dashboard can define a default dataset applied to new widgets (see Settings).
One filter, several datasets
If two widgets rely on different datasets but share a column with the same name, a filter defined on that column automatically applies to both. See the Filters page.
Configuring a widget
Once you’ve chosen the source, you configure the widget. The screen splits in two: on the left, the settings form (grouped into collapsible sections — Data, Content, Style…); on the right, a live preview that updates with every change.
Key indicator
Configure the plugin's settings before adding it.
Live preview
2 691,4
n = 3,558
The available settings depend on the chosen plugin. For a key indicator, for instance, you pick the column to summarise, the statistic (mean, median, sum, proportion…), the number of decimals, and what makes up the subtitle. The preview shows the result on your data right away. Confirm with Add widget: it lands at the bottom of the current tab.
The Custom code tab works on the same principle, but instead of a form you get a code editor: you write Python (or R, or SQL) and the preview shows the result on the right.
Age
All of this — languages, data access, output types — is covered on the dedicated R, Python and SQL code page.
Widgets follow the filters
Whatever the widget type, as soon as a filter changes, the widget recomputes automatically — both in the preview and on the dashboard. There’s nothing special for you to handle. See the Filters page.
The grid: move and resize
Widgets sit on a responsive grid. By default the layout is locked to avoid accidental moves. Turn on edit mode — the pencil icon in the toolbar — to rearrange:
- Move — drag the widget’s body to reposition it in the grid.
- Resize — grab the handle in the bottom-right corner of the widget and drag; the others reflow around it.
Width is expressed in grid columns and height in rows. A single dashboard can mix compact indicators (one cell) and large charts (full width).
Fit to screen height
By default, row height adapts so the tab fits the visible area without scrolling — useful in fullscreen. You can turn this off in the settings to go back to a fixed row height with scrolling.