SQLPage documentation

The two most important concepts in SQLPage are components and parameters.This page documents all the components that you can use in SQLPage and their parameters. Use this as a reference when building your SQL application.

components

list
A vertical list of items. Each item can be clickable and link to another page.
card
A grid where each element is a small card that displays a piece of data.
datagrid
Display small pieces of information in a clear and readable way. Each item has a name and is associated with a value.
steps
Guide users through multi-stage processes, displaying a clear list of previous and future steps.
text
A paragraph of text. The entire component will render as a single paragraph, with each item being rendered as a span of text inside it, the styling of which can be customized using parameters.
form
A series of input fields that can be filled in by the user. The form contents can be posted and handled by another SQLPage. The value entered by the user in a field named x will be accessible to the target SQL page as $x.
chart
A component that plots data. Line, area, bar, and pie charts are all supported. Each item in the component is a data point in the graph.
table
A table with optional filtering and sorting. Unlike most others, this component does not have a fixed set of item properties, any property that is used will be rendered directly as a column in the table.
csv
A button that lets the user download data as a CSV file. Each column from the items in the component will map to a column in the resulting CSV.
dynamic
A special component that can be used to render other components, the number and properties of which are not known in advance.
shell
Personalize the "shell" surrounding your page contents. Used to set properties for the entire page.

The "card" component

A grid where each element is a small card that displays a piece of data.

Parameters

columns (top-level)

The number of columns in the grid of cards. This is just a hint, the grid will adjust dynamically to the user's screen size, rendering fewer columns if needed to fit the contents.

title (top-level)

Text header at the top of the list of cards.

title

REQUIRED. Name of the card, displayed at the top.

active

Whether this item in the grid is considered "active". Active items are displayed more prominently.

color

The name of a color, to be displayed on the left of the card to highlight it.

description

The body of the card.

footer

Muted text to display at the bottom of the card.

icon

An icon name (from tabler-icons.io) to display on the left side of the card.

link

An URL to which the user should be taken when they click on the card.

Example 1

The most basic card

SELECT 
    'card' as component;
SELECT 
    'A' as title;
SELECT 
    'B' as title;
SELECT 
    'C' as title;

Result

A

B

C

Example 2

A beautiful card grid with bells and whistles.

SELECT 
    'card' as component,
    'Popular websites' as title,
    '2' as columns;
SELECT 
    'Google' as title,
    'https://google.com' as link,
    'A search engine' as description,
    'red' as color,
    'brand-google' as icon,
    'Owned by Alphabet Inc.' as footer;
SELECT 
    'Wikipedia' as title,
    'https://wikipedia.org' as link,
    'An encyclopedia' as description,
    'blue' as color,
    'world' as icon,
    '1' as active,
    'Owned by the Wikimedia Foundation' as footer;

Result

Popular websites