The building blocks.
A comprehensive plain-English directory of the interface components you'll encounter in every vibe coding project.
Accordion
A vertical stack of interactive headings used to toggle the display of further information. Keeps the page clean without hiding important content.
Alert
A way of informing the user of important changes, errors, or warnings in a prominent way without completely interrupting their workflow.
Avatar
A graphical representation of a user: usually a photo, illustration, or their initials. Often found in headers or comment sections.
Badge
A small label, generally appearing inside or in close proximity to another larger component, representing a status, property, or metadata.
Bento Grid
A layout of modular, unequal-sized cards arranged in a grid. Perfect for showcasing features, services, or dashboards in a premium way.
Breadcrumbs
A horizontal list of links showing the location of the current page in the site's navigational hierarchy, allowing quick upward movement.
Button
Buttons trigger an action such as submitting a form or opening a dialog. They should look clickable and visually indicate their priority.
Button Group
A wrapper for multiple, related buttons. Often used for toggling views or providing related actions in a compact space.
Card
A contained block of content representing a single entity. Can include images, text, and actions. Used heavily in grids.
Carousel
A means of displaying multiple slides of content, one or more at a time. Navigation is controlled via swiping or arrow buttons.
Checkbox
An input for choosing from predefined options. Used alone for a binary choice, or in a group to select multiple values.
Dialog / Modal
A window that overlays the main page, dimming the background and requiring interaction before the user can return to the main context.
Divider
A thin horizontal or vertical line used to group content and visually separate different sections of a layout.
Dropdown
A contextual menu that appears upon interaction (click or hover), displaying a list of selectable actions or links.
Hero
The large, prominent banner at the top of a page. Usually contains a strong headline, a short subtext, and a primary CTA button.
Input
A basic form control allowing the user to type in a single line of text data (like a name, email, or password).
Navbar
The consistent top bar of a website containing the brand logo, primary navigational links, and sometimes user actions like search or login.
Pagination
Controls that allow the user to navigate through a large set of content broken into separate pages.
Popover
A transient view that appears above other content, usually pointing to the element that triggered it. Great for rich tooltips or mini-forms.
Progress
A visual indicator showing the completion status of a task or process, usually displayed as a horizontal filled track.
Radio
An input for selecting exactly one option from a predefined list of mutually exclusive options.
Select
A form control that allows the user to choose one value from a collapsed list of options that expands on click.
Skeleton
A placeholder representation of content before the actual data has loaded. Reduces perceived loading time by mapping out the layout.
Slider
An input control that lets the user select a value (or range of values) from a continuous scale by dragging a thumb along a track.
Spinner
An animated, looping graphic (like a spinning circle) indicating that a background process is running.
Switch
A control that allows the user to immediately turn a specific setting on or off, functioning like a physical light switch.
Table
A structured arrangement of data into rows and columns, used to display and compare datasets.
Tabs
A navigational pattern allowing the user to switch between different views within the same context, saving vertical space.
Toast
A brief, non-blocking popup message providing feedback about an operation. Usually disappears automatically after a few seconds.
Tooltip
A small, contextual text box that appears when hovering or focusing on an element, providing supplementary information.
Date input
A means of inputting a date – often separated into multiple individual fields for day/month/year.
Datepicker
A visual way to choose a date using a calendar view.
Drawer
A panel which slides out from the edge of the screen.
Empty state
An indication to the user that there is no data to display in the current view; often includes an alternative action.
Fieldset
A wrapper for related form fields to group them visually and semantically.
File upload
An input which allows users to upload a file from their device.
Footer
Commonly appearing at the bottom of a page, used to display copyright, legal information, or secondary links.
Form
A grouping of input controls that allow a user to submit information to a server.
Heading
A title or caption used to introduce a new section.
Icon
A graphic symbol designed to visually indicate the purpose of an interface element.
Image
An element for embedding images.
Label
A text label for form inputs.
Link
A reference to a resource. This can be external or internal to the current document.
List
Used for grouping a collection of related items sequentially.
Quote
Used to display a quotation from a person or another source.
Rating
Lets users see and/or set a star rating for a product or other item.
Search input
Allows users to find content by entering a search term.
Segmented control
A hybrid between a button group, radio buttons, and tabs; used to switch between views.
Skip link
Invisible links that become visible on keyboard focus for skipping to another section.
Stack
A wrapper component for adding a consistent margin between components.
Stepper
A control for editing a numeric value with buttons for decrementing / incrementing.
Textarea
A form control for editing multi-line text.
Tree view
A component for displaying nested hierarchical information, such as a directory structure.
Video
Video players are used for displaying video content, often including playback controls.