Giu demo page   Show some examples in:    Theme color: x
Notification (embedded)
Title
Notification message
LargeMessage
No items found.
Icon
Button
Notify me! Disabled button Notify me!
Style utilities
A box with a shadow
DropDownMenu (focusable, keyboard-controlled, embedded ListPicker)
Menu Long menu
Menu above and to the left
Modals (stackable) and Modal (embedded): focusable, keyboard-controlled
Add modal Embed modal
Hints (show once, disable-all, reset) and Hint (embedded): simple label positioning, even taking into account DOM element positions
Show hint (if not already shown) Reset hints Disable all
Embed hint
Scrollable (with translateZ(0)) with floats

Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literature from 45 BC, making it over 2000 years old. Richard McClintock, a Latin professor at Hampden-Sydney College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, and going through the cites of the word in classical literature, discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of "de Finibus Bonorum et Malorum" (The Extremes of Good and Evil) by Cicero, written in 45 BC. This book is a treatise on the theory of ethics, very popular during the Renaissance. The first line of Lorem Ipsum, "Lorem ipsum dolor sit amet..", comes from a line in section 1.10.32.
Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literature from 45 BC, making it over 2000 years old. Richard McClintock, a Latin professor at Hampden-Sydney College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, and going through the cites of the word in classical literature, discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of "de Finibus Bonorum et Malorum" (The Extremes of Good and Evil) by Cicero, written in 45 BC. This book is a treatise on the theory of ethics, very popular during the Renaissance. The first line of Lorem Ipsum, "Lorem ipsum dolor sit amet..", comes from a line in section 1.10.32.
Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literature from 45 BC, making it over 2000 years old. Richard McClintock, a Latin professor at Hampden-Sydney College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, and going through the cites of the word in classical literature, discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of "de Finibus Bonorum et Malorum" (The Extremes of Good and Evil) by Cicero, written in 45 BC. This book is a treatise on the theory of ethics, very popular during the Renaissance. The first line of Lorem Ipsum, "Lorem ipsum dolor sit amet..", comes from a line in section 1.10.32.

Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literature from 45 BC, making it over 2000 years old. Richard McClintock, a Latin professor at Hampden-Sydney College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, and going through the cites of the word in classical literature, discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of "de Finibus Bonorum et Malorum" (The Extremes of Good and Evil) by Cicero, written in 45 BC. This book is a treatise on the theory of ethics, very popular during the Renaissance. The first line of Lorem Ipsum, "Lorem ipsum dolor sit amet..", comes from a line in section 1.10.32.
Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literature from 45 BC, making it over 2000 years old. Richard McClintock, a Latin professor at Hampden-Sydney College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, and going through the cites of the word in classical literature, discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of "de Finibus Bonorum et Malorum" (The Extremes of Good and Evil) by Cicero, written in 45 BC. This book is a treatise on the theory of ethics, very popular during the Renaissance. The first line of Lorem Ipsum, "Lorem ipsum dolor sit amet..", comes from a line in section 1.10.32.
Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literature from 45 BC, making it over 2000 years old. Richard McClintock, a Latin professor at Hampden-Sydney College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, and going through the cites of the word in classical literature, discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of "de Finibus Bonorum et Malorum" (The Extremes of Good and Evil) by Cicero, written in 45 BC. This book is a treatise on the theory of ethics, very popular during the Renaissance. The first line of Lorem Ipsum, "Lorem ipsum dolor sit amet..", comes from a line in section 1.10.32.
Contrary to popular belief, Lorem Ipsum is not simply random text. It has roots in a piece of classical Latin literature from 45 BC, making it over 2000 years old. Richard McClintock, a Latin professor at Hampden-Sydney College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage, and going through the cites of the word in classical literature, discovered the undoubtable source. Lorem Ipsum comes from sections 1.10.32 and 1.10.33 of "de Finibus Bonorum et Malorum" (The Extremes of Good and Evil) by Cicero, written in 45 BC. This book is a treatise on the theory of ethics, very popular during the Renaissance. The first line of Lorem Ipsum, "Lorem ipsum dolor sit amet..", comes from a line in section 1.10.32.
Progress
DataTable (sort, filter, select/multi-select, fetch more, keyboard-controlled, clipboard, manual sort with drag-and-drop, LocalStorage persistence...)

DataTable is based on the VirtualScroller component, whose primary function is to render only visible rows. These rows can have uniform and well-known heights (at the simplest end of the spectrum), uniform but unknown, and also dynamic: different for every row, and even changing in time (as a result of passed-down props or their own intrinsic state).

Complete example: editable, filtered, internationalised, inifinite(fetch more items by scrolling down to the bottom of the list), custom styles, etc.

Select random row
Items: 0
Sort manually
Id
Name
Notes
Confirmed
Confirmed 2
Phone

Example with custom sort and pagination: this one is also ultra-fast, thanks to having uniform heights:

Sort by
Page: 1
Sort manually
Id
Name
Age
Phone

Example with inline edit and validation

Sort manually
Name
Type
Last change
Confirmed
Phone
Submit

Simplest example: leave everything to the DataTable component

Sort manually
Id
Name
Phone
Notes

Example without a fixed data-table height

Sort manually
Id
Name
Phone
Notes

Finally, you can also embed a DataTable in a Modal: Show me!

Inputs
       
Choose a file… Choose a file… 

RadioGroup (flexible labels, clipboard)
because yes, we can ;)
RangeInput

Input validation

Textarea (with auto-resize)
En un lugar de la Mancha...
En un lugar de la Mancha...

Select: native, or with inline/dropdown ListPicker (keyboard-controlled, shortcuts, clipboard, one/two-stage, autoscroll)
  A long, really long, very very very very very very long optionApples Option 28Option 28
Apples
⇧⌃A
2
⌃2
Berries
⇧B, ⇧C
true
Alt-⌫
C
⇧↑
 
Option 0
Option 1
Option 2
Option 3
Option 4
Option 5
Option 6
Option 7
Option 8
Option 9
Option 10
Option 11
Option 12
Option 13
Option 14
Option 15
Option 16
Option 17
Option 18
Option 19
Option 20
Option 21
Option 22
Option 23
Option 24
Option 25
Option 26
Option 27
Option 28
Option 29
Option 30
Title
Option 31
Option 32
Option 33
Option 34
Option 35
Option 36
Option 37
Option 38
Option 39
Option 40
Option 41
Option 42
Option 43
Option 44
Option 45
Option 46
Option 47
Option 48
Option 49
Ø
 
Option 0
Option 1
Option 2
Option 3
Option 4
Option 5
Option 6
Option 7
Option 8
Option 9
Option 10
Option 11
Option 12
Option 13
Option 14
Option 15
Option 16
Option 17
Option 18
Option 19
Option 20
Option 21
Option 22
Option 23
Option 24
Option 25
Option 26
Option 27
Option 28
Option 29
Option 30
Title
Option 31
Option 32
Option 33
Option 34
Option 35
Option 36
Option 37
Option 38
Option 39
Option 40
Option 41
Option 42
Option 43
Option 44
Option 45
Option 46
Option 47
Option 48
Option 49

DateInput: field-only, or with inline/dropdown DateTimePicker (keyboard-controlled, clipboard; local for date+time, UTC otherwise)
dropDownPicker (default)
onlyField
native
disabled

Inline pickers with date:
April 2021
Su
Mo
Tu
We
Th
Fr
Sa
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
Today
  
April 2021
Su
Mo
Tu
We
Th
Fr
Sa
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
Today

Analogue and digital time pickers:
  
April 2021
Su
Mo
Tu
We
Th
Fr
Sa
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
Today
April 2021
Su
Mo
Tu
We
Th
Fr
Sa
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
Today

ColorInput: with inline/dropdown ColorPicker (RGB/HSV, alpha, clipboard)
xx  
RGB
HSV
H
S
V
#cca500ff
 
RGB
HSV
H
S
V
#cca500ff
 

Imperative example
Change & focus Revert & blur

Inputs in a paragraph

Here is a text input , a date input and . Now let's see a native select and a custom select:  . Are all correctly baseline-aligned? Now we also check what happens if we insert a drop-down menu and a plain button, an icon or a spinner. Finally, we add a color input x.

Uncontrolled vs. controlled form example
Uncontrolled: Read values
Controlled: Read values
Animated counter
Set (or with custom formatter: – €)
HeightMeasurer
This takes 30 px
px high