# Maintenance state

A placeholder shown when maintenance. Must include an illustration, a clear title, and a "Call to Action" button to help the user get started.

import Anatomy from "../../../../../../components/Anatomy.astro";
import VariantMatrix from "../../../../../../components/VariantMatrix.astro";
import MotionPattern from "../../../../../../components/MotionPattern.astro";
import AccessibilityRefs from "../../../../../../components/AccessibilityRefs.astro";
import PageMetadata from "../../../../../../components/PageMetadata.astro";
import StubFooter from "../../../../../../components/StubFooter.astro";
import DoDont from "../../../../../../components/DoDont.astro";
import Callout from "../../../../../../components/Callout.astro";
import TermList from "../../../../../../components/TermList.astro";
import ComponentTabs from "../../../../../../components/ComponentTabs.astro";
import ConfidenceChip from "../../../../../../components/ConfidenceChip.astro";
import MediaAsset from "../../../../../../components/MediaAsset.astro";

<PageMetadata
  slug="components.maintenance-state.content"
  source="components/dist/registries/dskit.json#maintenance-state"
  schema={1}
/>

<ComponentTabs component={"maintenance-state"} activeTab={"content"} />

## Content guidelines

System states communicate the current condition of the platform or a specific view. Clear, direct copy helps users understand what happened and what to do next.

### Empty state

Empty states appear when users have not yet created items, or when filters return no results. Clear copy and a direct CTA reduce friction and encourage engagement.

#### When to use

- When users have not yet created or uploaded items.
- When [filters](/components/form-input-selection/search-filters/) result in no visible results.
- To encourage engagement with a clear next action.

#### Style

- Use a short, instructive headline (noun phrase or imperative verb).
- Follow with one concise sentence that explains what the user can do.
- Provide one primary action (for example, **Create dataset**).
- Do not use `No results found` as a standalone message without guidance.

#### Do / Don't

<DoDont pairs={[{ do: "No items found / Add your first dataset to start exploring.", dont: "No results." }, { do: "Nothing here yet / Create a connection to get started.", dont: "There are no items to display at this time." }]} />

#### Example

| Element | Example text |
|---|---|
| Title | No items found |
| Body | Add your first dataset to start exploring. |
| CTA | Create dataset |

### Error state

Error states communicate that something failed or a resource could not be loaded. Copy must be specific, non-blaming, and actionable.

#### When to use

- When something fails or a resource cannot be loaded.
- When a user action fails to complete.

#### Style

- Be specific about what went wrong where possible.
- Offer a resolution step or next action.
- Do not use technical error codes as the primary message.
- Do not blame the user.

#### Example

| Element | Example text |
|---|---|
| Title | Something went wrong |
| Body | There was an error creating your item. Try again or contact support if the problem continues. |
| Primary CTA | Try again |

### Maintenance state

Maintenance states inform users that part of the platform is temporarily unavailable due to planned or unplanned work.

#### Style

- Explain what is affected and for how long.
- Provide an estimated time to resolution when available.
- Include a single action if there is something the user can do (for example, **Refresh**).

#### Example

| Element | Example text |
|---|---|
| Title | Scheduled maintenance in progress |
| Body | Reports may be unavailable until 12:00 PM EST. |
| CTA | Refresh |

### Success state

Success states confirm that a user action completed. They often follow an action that previously triggered an empty state.

#### Style

- Confirm what was completed, not just that it succeeded.
- Keep copy brief. One line is usually sufficient.
- Offer a logical next action.

#### Example

| Element | Example text |
|---|---|
| Title | Items imported |
| Body | Your datasets are ready to explore. |
| Primary CTA | Open catalog |