title: Tables & Data Display page: tables

Tables & Data Display

Components for displaying data in tables, avatars, progress indicators, and loading states.

Basic Table

Name Email Role Status
Alice Johnson alice@example.com Admin Active
Bob Smith bob@example.com Editor Active
Carol Davis carol@example.com Editor Pending
Dave Wilson dave@example.com Viewer Inactive
Eve Martinez eve@example.com Admin Active
<div class="table-container">
  <table class="table">
    <thead><tr><th>Name</th><th>Email</th></tr></thead>
    <tbody><tr><td>Alice</td><td>alice@example.com</td></tr></tbody>
  </table>
</div>

Table Variants

Striped Table

Product Category Price
Widget ATools$19.99
Widget BParts$24.99
Widget CTools$12.50
Widget DParts$34.00

Hover Table

Task Assigned To Due Date
Design mockupsAliceFeb 15
Write testsBobFeb 18
Deploy v2.0CarolFeb 20
Update docsDaveFeb 22
<table class="table table-striped">...</table>
<table class="table table-hover">...</table>

<!-- Component -->
<what-table>
  <table>...</table>
</what-table>

Avatars

Size Variants

Avatar XS
XS
Avatar SM
SM
Avatar Default
Default
Avatar LG
LG
Avatar XL
XL
Avatar 2XL
2XL

Initials

AJ
BS
CD
DW

Status Indicators

Online
Online
Offline
Offline
Busy
Busy
Away
Away

Avatar Group

User 1 User 2 User 3 User 4
+3
<!-- Image avatar with size -->
<img src="photo.jpg" class="avatar avatar-lg" alt="User">

<!-- Initials avatar -->
<div class="avatar">AJ</div>

<!-- Status indicator -->
<div class="avatar avatar-online">
  <img src="photo.jpg" alt="Online user">
</div>

<!-- Avatar group -->
<div class="avatar-group">
  <img src="u1.jpg" class="avatar" alt="User 1">
  <img src="u2.jpg" class="avatar" alt="User 2">
  <div class="avatar">+3</div>
</div>

<!-- Component -->
<what-avatar src="photo.jpg" size="lg"></what-avatar>

Empty States

No results found

Try adjusting your search or filters to find what you're looking for.

<div class="empty-state">
  <div class="empty-state-icon">...</div>
  <h3 class="empty-state-title">No results found</h3>
  <p class="empty-state-description">Description text</p>
  <button class="btn btn-primary">Action</button>
</div>

<!-- Component -->
<what-empty-state title="No results" description="Try again">
  <button class="btn btn-primary">Action</button>
</what-empty-state>

Progress Bars

Color Variants

Primary (65%)
Success (80%)
Warning (45%)
Danger (25%)

Sizes

Small
Default
Large
Extra Large

With Labels

72%
Complete

Striped

<div class="progress">
  <div class="progress-bar" style="width: 65%"></div>
</div>

<!-- With color and label -->
<div class="progress progress-lg">
  <div class="progress-bar progress-success" style="width: 80%">
    <span class="progress-label">80%</span>
  </div>
</div>

<!-- Component -->
<what-progress value="65" color="success" size="lg"></what-progress>

Spinners

Sizes

Small
Default
Large
Extra Large

Color Variants

<div class="spinner"></div>
<div class="spinner spinner-lg spinner-primary"></div>

<!-- Component -->
<what-spinner size="lg" color="primary"></what-spinner>

Skeleton Loading

Placeholder content shown while data is loading.

Individual Elements

Skeleton Card Layout

<div class="skeleton-title"></div>
<div class="skeleton-text"></div>
<div class="skeleton-avatar"></div>
<div class="skeleton-image"></div>
<div class="skeleton-button"></div>

CSS Classes Reference

Table Classes

Class Description
tableBase table styling
table-stripedAlternating row backgrounds
table-hoverHighlight rows on hover
table-containerResponsive scrollable wrapper

Avatar Classes

Class Description
avatarBase avatar (default size)
avatar-xsExtra small avatar
avatar-smSmall avatar
avatar-lgLarge avatar
avatar-xlExtra large avatar
avatar-2xlDouble extra large avatar
avatar-onlineGreen status dot
avatar-offlineGray status dot
avatar-busyRed status dot
avatar-awayYellow status dot
avatar-groupOverlapping avatar container

Empty State Classes

Class Description
empty-stateCentered empty state container
empty-state-iconIcon wrapper
empty-state-titleTitle text
empty-state-descriptionDescription text

Progress Classes

Class Description
progressProgress bar container
progress-barFill element (set width via style)
progress-successGreen progress bar
progress-warningYellow progress bar
progress-dangerRed progress bar
progress-smSmall height
progress-lgLarge height
progress-xlExtra large height
progress-labelText label inside bar
progress-stripedStriped pattern

Spinner Classes

Class Description
spinnerBase spinner (default size)
spinner-smSmall spinner
spinner-lgLarge spinner
spinner-xlExtra large spinner
spinner-primaryPrimary color spinner
spinner-successSuccess color spinner
spinner-warningWarning color spinner
spinner-dangerDanger color spinner
spinner-infoInfo color spinner

Skeleton Classes

Class Description
skeleton-textText line placeholder
skeleton-titleTitle placeholder (taller)
skeleton-avatarCircle placeholder for avatars
skeleton-imageRectangle placeholder for images
skeleton-buttonButton placeholder