GOAT UI contains most used web components built using Stencil. So you don't need to include any additional framework dependencies, You can simply import required component js, and right away start using it.
Checkout the complete documentation over here -> https://goatui.com
- Put a script tag similar to
this
<script type="module" src="https://cdn.jsdelivr.net/npm/@goatui/[email protected]/dist/goatui/goatui.esm.js"></script>
in the head of your index.html - Include default font Roboto in the page
- Then you can use the element anywhere in your template, JSX, html etc
<!doctype html>
<html lang='en'>
<head>
<meta charset='utf-8' />
<meta name='viewport' content='width=device-width' />
<title>Goat UI Component</title>
<!-- include your custom theme variable values, view variable names at https://cdn.jsdelivr.net/npm/@goatui/[email protected]/dist/goatui/assets/styles/theme.css -->
<!--link rel="stylesheet" href="/custom-theme.css"></link-->
<script type='module'
src='https://cdn.jsdelivr.net/npm/@goatui/[email protected]/dist/goatui/goatui.esm.js'></script>
<style>
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital@0;1&family=IBM+Plex+Sans+Condensed:ital@0;1&family=IBM+Plex+Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;1,100;1,200;1,300;1,400;1,500;1,600;1,700&family=IBM+Plex+Serif:ital@0;1&display=swap');
:root {
--font-family-base: 'IBM Plex Sans', 'Helvetica Neue', Arial, sans-serif;
}
</style>
</head>
<body>
<goat-button size='lg' color='primary'>Click me</goat-button>
</body>
</html>
- 🟢 ready (feature complete for now)
- 🟡 beta (changes possible, not feature complete)
- 🔴 not ready (unstyled / no functions)
- 🔵 planned (created, but empty files)
Input controls are UI design elements that allow users to input information into the system. They are essential for collecting data and enabling user interactions. Some common examples of input controls include text fields, dropdown menus, checkboxes, and radio buttons.
Name | Component | State |
---|---|---|
Code editor | goat-card-editor | 🟢 |
Color picker | goat-color-picker | 🔴 |
Checkbox | goat-checkbox | 🟢 |
Date picker | goat-date-picker | 🟡 |
Date Time picker | goat-datetime-picker | 🔴 |
File picker | goat-file-picker | 🔴 |
HTML editor | goat-html-editor | 🟢 |
Input | goat-input | 🟢 |
Month picker | goat-month-picker | 🔴 |
Number | goat-number | 🟢 |
Select | goat-select | 🟢 |
Textarea | goat-textarea | 🟢 |
Time picker | goat-time-picker | 🟡 |
Week picker | goat-week-picker | 🔴 |
Form control | goat-form-control | 🟡 |
Navigational components are UI elements that help users move around the app or website. They provide users with a clear and intuitive way to navigate through different sections and pages. Some common examples of navigational components include menus, tabs, and breadcrumbs.
Name | Component | State |
---|---|---|
Breadcrumb | goat-breadcrumb | 🟢 |
Dropdown | goat-dropdown | 🟡 |
Menu | goat-menu | 🟡 |
Tabs | goat-tabs | 🟢 |
Informational components are UI elements that provide information to users. They communicate important messages, updates, or instructions within the app or website. Some common examples of informational components include notifications, tooltips, and progress bars.
Name | Component | State |
---|---|---|
Badge | goat-badge | 🟢 |
Progress | goat-progress | 🟢 |
Spinner | goat-spinner | 🟢 |
Tooltip | goat-tooltip | 🟢 |
Notification | goat-notification | 🟢 |
Notification Manager / Toast | goat-notification-manager | 🟢 |
Containers are UI elements that group similar content together, making it easier for users to navigate and scan through the interface. Examples of common containers include cards, carousels, and accordions, which provide structure and organization to the content.
Name | Component | State |
---|---|---|
Accordion | goat-accordion | 🟢 |
Card | goat-card | 🟡 |
These components are used for general purpose. They include
Name | Component | State |
---|---|---|
Avatar | goat-avatar | 🟢 |
Button | goat-button | 🟢 |
Button Group | goat-button-group | 🟢 |
Calendar | goat-calendar | 🟢 |
Card Select | goat-cardselect | 🔴 |
Code Highlighter | goat-card-highlighter | 🟢 |
Column | goat-col | 🔴 |
Empty State | goat-empty-state | 🟡 |
Flow Designer | goat-flow-designer | 🔵 |
Grid | goat-grid | 🔴 |
Group | goat-group | 🔴 |
Header | goat-header | 🟢 |
Icon | goat-icon | 🟢 |
Link | goat-link | 🟢 |
Modal | goat-modal | 🟢 |
Notification Manager | goat-notification-manager | 🟡 |
Observer | goat-observer | 🔴 |
Pagination | goat-pagination | 🔴 |
Radio Group | goat-radiogroup | 🔴 |
Row | goat-row | 🔴 |
Slider | goat-slider | 🟡 |
Spoiler | goat-spoiler | 🔴 |
Stepper | goat-stepper | 🔴 |
Table | goat-table | 🟡 |
Tag / Chip | goat-tag | 🟢 |
Text | goat-text | 🟢 |
Tree View | goat-tree-view | 🟡 |
Toggle | goat-toggle | 🟢 |
These components are used to display data in a graphical format. They include
Name | Component | State |
---|---|---|
Doughnut Chart | goat-chart-doughnut | 🟢 |
Pie Chart | goat-chart-pie | 🟢 |