For AI agents: the complete documentation index is available at https://a3s-lab.github.io/UI/en/llms.txt, the full documentation bundle is available at https://a3s-lab.github.io/UI/en/llms-full.txt, and this page is available as Markdown at https://a3s-lab.github.io/UI/en/components/empty.md.

Empty

Live previewHTML · CSS · JavaScript

No Projects Yet

You haven't created any projects yet. Get started by creating your first project.

Usage

Include CSS

Import Tailwind and one full A3S UI style bundle.

@import "tailwindcss";
@import "@a3s-lab/ui/a3s.css";

Or import only the base CSS, Empty component CSS, and one style pack.

@import "tailwindcss";
@import "@a3s-lab/ui/base.css";
@import "@a3s-lab/ui/components/empty.css";
@import "@a3s-lab/ui/styles/a3s.css";

Using CDN or bundler imports? See the Installation page.

Add your empty HTML

Add class="empty" to a semantic container. The component styles common children like header, figure, headings, descriptions, and footer.

<section class="empty">
  <header>
    <figure><svg class="lucide lucide-folder-code" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 10.5 8 13l2 2.5" /><path d="m14 10.5 2 2.5-2 2.5" /><path d="M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2z" /></svg></figure>
    <h3>No Projects Yet</h3>
    <p>You haven't created any projects yet. Get started by creating your first project.</p>
  </header>
  <footer>
    <div class="flex gap-2">
      <button class="btn">Create Project</button>
      <button class="btn" data-variant="outline">Import Project</button>
    </div>
    <a href="#" class="btn text-muted-foreground" data-variant="link" data-size="sm">
      Learn More
<svg class="lucide lucide-arrow-up-right" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M7 7h10v10" /><path d="M7 17 17 7" /></svg>
    </a>
  </footer>
</section>

HTML structure

<section class="empty">

The empty-state container.

<header>

Groups the media, title, and description.

<figure> Optional
Icon, avatar, image, or avatar group. An icon-only figure is styled automatically with :has(> svg:only-child).
<h2>, <h3>, or <h4>
The empty-state title.
<p> Optional
The empty-state description.
<section> or <footer> Optional
Actions and supporting content.

Examples

Outline

Live previewHTML · CSS · JavaScript

Cloud Storage Empty

Upload files to your cloud storage to access them anywhere.

Background

Live previewHTML · CSS · JavaScript

No Notifications

You're all caught up. New notifications will appear here.

Avatar

Live previewHTML · CSS · JavaScript
@shadcn

User Offline

This user is currently offline. You can leave a message to notify them or try again later.

Avatar group

Live previewHTML · CSS · JavaScript
@shadcn@maxleiter@evilrabbit

No Team Members

Invite your team to collaborate on this project.

Input group

Live previewHTML · CSS · JavaScript

404 - Not Found

The page you're looking for doesn't exist. Try searching for what you need below.

RTL

Live previewHTML · CSS · JavaScript

لا توجد مشاريع بعد

لم تقم بإنشاء أي مشاريع بعد. ابدأ بإنشاء مشروعك الأول.