Skip to main content
skill CX Codex

search · aladicf — Claude Code skill: search UX, filters, results

Walks an agent through designing site search: autocomplete, filters, result lists and recovery from zero results.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add aladicf/better-web-ui --skill search -a claude-code
Open on GitHub

What search does

The skill kicks in when you ask to add search, rework a results page, or fix a dead end where nothing matches. It starts by mapping the context: what people actually search for, which queries fail, how big the searchable dataset is. Then it moves to the query input, suggestions, filters and the result list itself.

Four references ship with it — autocomplete and filter architecture, search and findability, faceted browsing for long lists, and predictive interfaces with recommendations. A pre-ship checklist covers typos, partial matches, synonyms, keyboard navigation and announcing result counts to screen readers.

The workflow expects $frontend-design to be loaded first for its context gathering protocol, and $setup if no design context exists yet. Miss either one and the process stalls, so check before you start. Anti-patterns are spelled out too: filters that return nothing, hidden active filters, filter state lost on refresh, infinite scroll that blocks the footer.

What it helps with

  • add search to a site without hand-rolling every detail
  • redesign a results page so users see why something matched
  • build autocomplete with arrow-key navigation and Escape to close
  • fix a zero-results page that sends users away
  • make filters that never dead-end and survive a page refresh

Example prompts for the agent

  • add search to the product catalog with autocomplete and filters
  • rework the search results page — right now it's unclear why these matches show up
  • docs search returns nothing; suggest what to show the user instead

How to install search

1Skills CLI (Vercel)

npx skills add aladicf/better-web-ui --skill search -a claude-code

2Manually: put the files in place

~/.claude/skills/search/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/search/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about search

How do I install search in Claude?

Run npx skills add aladicf/better-web-ui --skill search -a claude-code. The skill lands in ~/.claude/skills/search/SKILL.md.

What does the search skill do?

It guides the agent through search interface design: query input, suggestions, filters, result presentation, loading and empty states. It ends with a checklist for verifying search quality.

What does the skill need to work?

It loads $frontend-design for its context gathering protocol, and $setup when no design context exists yet. Gather what users search for, which queries fail and how large the dataset is before starting.

Source text

SKILL.md · MIT
---
name: search
description: Design or improve search experiences, result presentation, and filtering interfaces. Use when the user asks to add search, redesign search results, improve findability, build autocomplete, add filters, or fix zero-results dead ends.
metadata:
  argument-hint: "[search surface or result set]"
---

Build search experiences that help users find what they need quickly, even when they are uncertain about what they are looking for. The goal is not perfect relevance on the first try; it is guiding users from intent to outcome through forgiving search and clear results.

Consult the [search and filtering UX](../frontend-design/reference/search-and-filtering-ux.md) reference for autocomplete patterns, filter architecture, result presentation, and zero-results recovery.
Consult the [search and findability](../frontend-design/reference/search-and-findability.md) reference for site search, autosuggest, command palettes, and intent-aware findability.
Consult the [collection browsing and filtering](../frontend-design/reference/collection-browsing-and-filtering.md) reference for long result lists, faceted browsing, and filter overlays.
Consult the [predictive and intent-driven UI](../frontend-design/reference/predictive-and-intent-ui.md) reference for recommendations, smart defaults, and resume flows.

## MANDATORY PREPARATION

Users start this workflow with `/search`. Once this skill is active, load $frontend-design — it contains design principles, anti-patterns, and the **Context Gathering Protocol**. Follow that protocol before proceeding — if no design context exists yet, you MUST load $setup first. Additionally gather: what users typically search for, what common queries fail, and how large the searchable dataset is.

## Assess Search Needs

Understand the search context before designing the interface:

1. **Search intent**: Are users looking for a specific item (known-item search), exploring a category (exploratory), or trying to complete a task (transactional)?
2. **Dataset size**: Small datasets (< 100 items) may not need search; filtering or categorization may suffice. Large datasets need faceted search and ranking.
3. **Query patterns**: What do users actually type? Common misspellings, synonyms, and abbreviations should be handled.
4. **Failure modes**: What happens when search returns nothing? When it returns too much?

## Search Interface Design

### Query input

- Use concrete placeholder text ("Search for "project alpha"") instead of generic filler
- Show a clear button once the user has typed
- Support Enter to submit; do not rely solely on live results
- Include a visible search button, not just a decorative icon
- If scope is selectable ("All", "Products", "Help"), make it obvious and changeable

### Autocomplete and suggestions

- Show suggestions after 2-3 characters
- Group by type: recent searches, popular queries, products, help articles
- Bold the matching substring
- Support arrow-key navigation, Enter to select, Escape to close
- On mobile, ensure suggestions are scrollable and do not overflow
- Show a helpful message when nothing matches instead of an empty list

### Filter integration

- Sidebar filters for many filters on wide layouts
- Top bar for a few key filters
- Drawer/overlay on narrow layouts
- Inline chips for active filters that can be removed directly
- Synchronize filter state with the URL for shareability
- Show active filter count when collapsed

## Result Presentation

### Result list

- Clear hierarchy: title, metadata, snippet, thumbnail
- Highlight matching query terms in titles and snippets
- Consistent formatting across all results
- Each result should be a clear link or have a primary action

### Empty states

- Acknowledge the query ("No results for 'xyz'")
- Suggest alternatives: corrected spelling, related terms, broader categories
- Offer to clear filters if any are active
- Provide a fallback action ("Browse all", "Contact support")

### Ranking controls

- Allow users to change sort order (relevance, price, date, rating)
- Label the default sort and explain why it is the default
- If results are promoted, label them transparently ("Featured")

## Pagination and Loading

| Pattern | Best for |
|---------|----------|
| Pagination | Large result sets, SEO-critical pages, users who reference specific pages |
| Infinite scroll | Discovery browsing, image galleries, social feeds |
| Load more | Balanced approach; user controls when to load |

- Show skeleton screens that match result layout during loading
- Preserve previous results while loading new ones when possible

## Accessibility

- Announce result count changes for screen readers
- Associate filter controls with result regions using `aria-controls`
- Ensure active filters are announced when changed
- Provide skip links from filters to results
- Support keyboard navigation through suggestions and filters

## Anti-Patterns

- **Case-sensitive search**: Users should not guess capitalization
- **No visual feedback during search**: Silent search feels broken
- **Filters that produce zero results**: Disable or hide invalid combinations
- **Overwhelming filter panels**: Too many filters create decision paralysis
- **Hidden active filters**: Users forget what they filtered
- **Losing filter state on refresh**: Filters should persist in the URL
- **Infinite scroll without footer access**: Users cannot reach footer links
- **Search requiring exact matches**: Fuzzy matching and stemming are essential
- **No zero-results recovery**: An empty screen with no guidance is a dead end
- **Autocomplete that hijacks the cursor**: Suggestions should not auto-submit

## Verify Search Quality

Before shipping:

- [ ] Search handles typos, partial matches, and common synonyms
- [ ] Autocomplete is keyboard-navigable and mobile-friendly
- [ ] Active filters are visible and individually removable
- [ ] Filter state is reflected in the URL
- [ ] Zero-results pages offer alternatives and recovery paths
- [ ] Result rankings can be changed by the user
- [ ] Loading states match the result layout
- [ ] Screen readers announce result count and filter changes
- [ ] Focus management follows a logical path
- [ ] Search is tested with realistic queries and misspellings

© aladicf · MIT · aladicf/better-web-ui

Similar skills

Everything for Frontend and UI →

search by other authors comes first.

search official anthropics Runs parallel queries across connected MCP tools and synthesizes the findings into a single answer. Helpful when decisions or notes are scattered across chat, email, and storage. CX Codex +1 5,000installs search browserbase The skill runs web searches through Browserbase's Search API and returns links with titles, authors and publish dates, without opening a browser session. CX Codex +1 2,800installs search brightdata Searches the web using the Bright Data CLI. Runs keyword SERP queries across Google, Bing, and Yandex or discovers pages ranked by semantic intent. CX Codex +1 7,500installs search entireio Searches recorded Entire history, checkpoints, and decisions across repositories. It gives agents past architectural context before reading local source files. CX Codex +1 458installs search mobbin Tunes queries for Mobbin UI tools. Guides the agent to pick matching screens, flows, and marketing sections without over-filtering. CX Codex +1 342installs search-ux Owl-Listener Guides the agent through search design: query input, suggestions, filters, results and the empty state. Useful when people retrieve instead of browse. CX Codex +1 1,800installs information-architecture-navigation hueyexe A skill for designing navigation, labels, taxonomy and search in a digital product. Useful when the structure of a site or app stops helping people find things. CX Codex +1 556installs impeccable pbakaus A skill for your coding agent that designs and reworks interfaces: landing pages, dashboards, forms, iOS and Android screens. Useful when the UI needs real design decisions, not guesswork. CX Codex +1 361,300installs uizze-ui UIZZE Guides the agent through layout fixes, typography adjustments, and UI state handling. Helpful when improving component hierarchy using existing project tokens. CX Codex +1 144,000installs von-restorff-effect Owl-Listener This skill guides coding agents to isolate a single primary action on a screen using visual contrast. It applies when one choice must grab attention immediately. CX Codex +1 1,700installs forms-inputs-checkout hueyexe A skill for designing, critiquing and implementing forms, validation and checkout flows without breaking accessibility. CX Codex +1 524installs

From the same set22

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor