The collection of ready-to-use components that could be used to create native-like views that will look perfect on iOS, Android and other devices
Built with respect to:
- Telegram community UI Library — basic design system for iOS and Android
- Apple Design Resources and guidelines
- Material Design System
- Telegram WebK design
- Telegram Desktop design
Amount component is used to display a number with optional prefix and postfix.
Prop name |
Type |
Default value |
Description |
prefix |
string |
undefined |
Will be placed at top-left corner near the number |
Slot name |
Description |
default |
Number itself |
topline |
Will be placed above the number |
postfix |
Will be placed after the number |
subline |
Will be placed below the number |
Avatar component is used to display a picture or a placeholder.
Prop name |
Type |
Default value |
Description |
id |
number |
undefined |
Entity ID |
src |
string |
undefined |
Picture src |
pictureThumb |
string |
undefined |
Base64 of picture 10x10 used as thumbnail |
placeholder |
string |
undefined |
Used when the image is not available |
big |
boolean |
undefined |
Whether the avatar should be big |
DataOverview component is used to display rating, awards and charts place.
Prop name |
Type |
Default value |
Description |
rating |
Rating |
- |
Rating data |
award |
Award |
- |
Award data |
chart |
Chart |
- |
Chart data |
Property name |
Type |
Description |
rating |
number |
Rating value |
votesCount |
number |
Number of votes |
Property name |
Type |
Description |
name |
string |
Award name |
section |
string |
Award section |
Property name |
Type |
Description |
place |
number |
Chart place |
category |
string |
Chart category |
Date picker component is used to select a date.
Prop name |
Type |
Default value |
Description |
minDate |
Date |
- |
Days before this day will be inactive |
maxDate |
Date |
- |
Days after this day will be inactive |
Event name |
Payload |
Description |
datePick |
Date |
Fired when some date is selected |
Date picker compact is a component that displays a date in a compact format.
Prop name |
Type |
Default value |
Description |
value |
Date |
- |
Visible value |
Icon is a component that displays an icon.
Prop name |
Type |
Default value |
Description |
name |
string |
- |
Name of the icon |
Input is a component that allows user to input text.
Prop name |
Type |
Default value |
Description |
modelValue |
string |
- |
Model value. Will be changed on input |
placeholder |
string |
undefined |
Text that will be shown when input is empty |
leftIcon |
string |
undefined |
Name of icon that will be shown on the left side of input |
Event name |
Payload |
Description |
update:modelValue |
string |
Will be emitted when input value is changed |
List is a component that displays a list of items.
Prop name |
Type |
Default value |
Description |
gapped |
boolean |
- |
Whether to add a gap between each item |
withBackground |
boolean |
- |
Whether to add a background |
standalone |
boolean |
- |
Whether to display list as a standalone island |
ListItem is a component that displays a list item.
Name |
Type |
Default |
Description |
avatar |
object |
- |
Avatar object. See Avatar component for details |
transactionIcon |
string |
- |
Name of the icon that will be shown instead of avatar |
icon |
string |
- |
Name of the icon that will be shown instead of avatar |
title |
string |
- |
Title of the list item. Used along with subtitle |
subtitle |
string |
- |
Subtitle of the list item |
label |
string |
- |
Label of the list item |
rightIcon |
string |
- |
Name of the icon that will be shown on the right side of the list item |
rightIconLabel |
string |
- |
Label of the right icon |
standalone |
boolean |
- |
Whether to display list item as a standalone island |
to |
string |
- |
Router link |
bigAvatar |
boolean |
- |
Whether to display avatar as a big one |
nowrap |
boolean |
- |
Whether to display subtitle in one line |
Name |
Description |
picture |
Picture slot |
right |
Right slot |
ListCard is a component that displays a card with a picture and content below it. The card will be opened with smooth animation just from the list.
Prop name |
Type |
Default value |
Description |
title |
string |
- |
Name of the card |
picture |
string |
- |
Picture src |
pictureThumb |
string |
undefined |
Base64 of picture 10x10 used as thumbnail |
Slot name |
Description |
visible |
Content that will be shown when card is collapsed |
collapsed |
Content that will be shown when card is expanded |
ListItemExpandable is a component that displays a list item that can be expanded.
Prop name |
Type |
Default value |
Description |
opened |
boolean |
false |
Whether the list item should be opened |
Slot name |
Description |
default |
Content of the list item |
ListItemIcon is a component that displays an icon inside a list item.
Prop name |
Type |
Default value |
Description |
icon |
string |
- |
Icon name |
type |
'square' | 'circle' |
- |
Icon type |
Lottie component allows you to render an animation from a JSON file. You can find more information about Lottie here.
Name |
Type |
Default |
Description |
animationData |
object |
undefined |
The animation data. |
width |
string |
undefined |
The width of the animation. |
height |
string |
undefined |
The height of the animation. |
FixedFooter
FixedFooter is a component that displays a footer that is fixed to the bottom of the screen.
This component does not have any props.
PageWithHeader
A component that displays a page with a fixed header and a content.
This component has no props.
Placeholder is a component that displays a placeholder with a title, caption and a picture.
Prop name |
Type |
Default |
Description |
title |
string |
- |
Title of the placeholder. Will be displayed in a large font below the picture. |
caption |
string |
- |
Caption of the placeholder. Will be displayed in a smaller font below the title. |
linkText |
string |
- |
Link text of CTA link |
compact |
boolean |
- |
Whether the placeholder should be compact |
withBackground |
boolean |
- |
Whether the placeholder should have a background |
Slot name |
Description |
picture |
Picture of the placeholder. Will be displayed in the center of the placeholder. |
Rating is a component that displays a rating.
Name |
Type |
Description |
value |
number |
Rating value 0 — 5 |
Section is a component that displays a section of content.
Prop name |
Type |
Default |
Description |
withBackground |
Boolean |
false |
Adds background color |
padded |
Boolean |
false |
Adds horizontal paddings |
standalone |
Boolean |
false |
Whether to display list as a standalone island |
title |
String |
undefined |
Section title will be placed above the content |
Slot name |
Description |
default |
Section content |
Sections is a component that displays a list of sections.
This component has no props.
Text block is a component that displays a text block with a background.
This component does not have any props.
Name |
Description |
default |
Text block content |