agentsclimarketplace

Apple hig empty states

Skill aka-kika/akakika-skills/skills/apple-hig/apple-hig-empty-states

Curated, polished agent skills for building calm native apps and running AI coding agents well. Works with Claude Code, Codex, and Cursor.

Install
npx -y skills add aka-kika/akakika-skills --skill apple-hig-empty-states

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 6 stars6 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Use when designing or implementing empty, first-run, no-result, offline, error, or waiting states in Apple-platform apps — every empty state explains what is missing, why it matters, and what to do next.

SKILL.md

5.5 KB, as published. Nobody here has run it

Apple HIG Empty States

Turn blank screens into useful empty, first-run, no-result, offline, and error states that explain what is missing and what to do next. Reach for it whenever a view has no data, no selection, no results, no connection, or a failed load.

Purpose

Use this skill when designing or implementing empty, first-run, no-result, offline, error, or waiting states in Apple-platform apps.

Use for:

  • No projects
  • No tasks
  • No active runs
  • No skills
  • No notes
  • No reports
  • No selected item
  • No search results
  • First launch
  • Offline/local model not running
  • Permission missing
  • Failed load

Core rule

An empty state must explain what is missing, why it matters, and what to do next.

A blank screen is not an empty state.

Empty state formula

Icon
Title
Short explanation
Primary action
Optional secondary action

Example:

No Active Runs
The agent is not working on anything right now.
Start a task or open the queue.
[New Task] [Open Queue]

When to use this skill

Use this skill when a view has no data, no selection, no permissions, no connection, no results, or the user is seeing the app for the first time.

When not to use this skill

Do not use this skill to hide real errors. If something failed, show an error state with recovery.

Types of empty states

1. First-run empty state

For new users.

Welcome to your app
Create your first project, connect an agent, or add a skill to begin.
[Create Project] [Add Skill]

2. No-content state

For normal empty data.

No Projects
Create a project to organize tasks, prompts, and skills.
[New Project]

3. No-selection state

For inspector/detail areas.

No Item Selected
Select a task, project, run, or skill to inspect its details.

4. No-search-results state

For failed search.

No Results
Try a project, skill, prompt, file, or command name.
[Clear Search]

5. Offline / unavailable state

For local models or services.

Ollama Not Running
Start Ollama to use local models in this app.
[Retry] [Open Settings]

6. Error state

For real failure.

Could Not Load Reports
The reports folder could not be read.
[Retry] [Choose Folder]

SwiftUI default

Use ContentUnavailableView when possible.

ContentUnavailableView(
    "No Projects",
    systemImage: "folder",
    description: Text("Create a project to organize your work.")
)

With actions:

ContentUnavailableView {
    Label("No Active Runs", systemImage: "bolt.circle")
} description: {
    Text("The agent is not working on anything right now.")
} actions: {
    Button("New Task") {
        createTask()
    }
    Button("Open Queue") {
        openQueue()
    }
}

Example empty states

No Active Runs
The agent is not working on anything right now.
Start a task, open the queue, or run a saved skill.
[New Task] [Open Queue]

No Skills
Skills are reusable instructions the agent can apply while coding.
Create your first skill or import a skill folder.
[New Skill] [Import]

No Reports
Daily reports will appear here after your first generated summary.
Generate one from today’s activity.
[Generate Report]

No Search Results
Nothing matched your search.
Try a project, skill, prompt, file, or command name.
[Clear Search]

Ollama Not Running
Local models are unavailable until Ollama starts.
Start Ollama, then retry.
[Retry] [Open Settings]

Design rules

  • Keep the message short.
  • Use one calm SF Symbol.
  • Use one primary action.
  • Add one secondary action only if useful.
  • Avoid cute/clever copy.
  • Avoid blaming the user.
  • Do not show a huge empty illustration in small popovers.
  • Use secondary text for explanation.
  • Use clear recovery actions for errors.

Good SF Symbols

No projects: folder
No tasks: checkmark.circle
No active runs: bolt.circle
No skills: sparkles
No prompts: text.badge.star
No files: doc
No notes: note.text
No reports: chart.bar.doc.horizontal
No selection: sidebar.right
No search results: magnifyingglass
Offline: wifi.slash
Error: exclamationmark.triangle

Review checklist

[ ] Empty state explains what is missing
[ ] Empty state explains what to do next
[ ] Primary action is clear
[ ] Copy is short and calm
[ ] Symbol matches the state
[ ] No-result state supports clearing search
[ ] Error state has retry or recovery
[ ] Offline state explains service dependency
[ ] Empty state is not too large for popover
[ ] VoiceOver labels are clear

Common mistakes

Blank screen
“Nothing here” with no next action
Too many buttons
Cute but unclear copy
Error hidden as empty state
Huge illustration in a tiny menu bar panel
No retry for failed load
No clear search reset

Prompt template

Use the apple-hig-empty-states skill to add polished empty states.

Rules:
- Every no-data, no-selection, no-search-result, offline, and error state needs clear UI.
- Use ContentUnavailableView where possible.
- Include a short title, explanation, and primary action.
- Use one meaningful SF Symbol.
- Keep copy calm and direct.
- Add retry or recovery for error states.
- Add Clear Search for no-result states.
- Do not hide real errors as generic emptiness.

After coding:
1. List empty states added.
2. List actions added.
3. Explain error/offline recovery.
4. Give manual test steps.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.