implementing-search-filter

Implements search and filter interfaces for React frontends and Python backends with debouncing and query optimization.

1|Updated Feb 24, 2026
One-click install
npx skills add https://github.com/masermediagroup-stack/maser-media --skill implementing-search-filter-masermediagroup-stack
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: implementing-search-filter
Source: https://github.com/masermediagroup-stack/maser-media/tree/main/.cursor/skills/community/ai-design-components/skills/implementing-search-filter
Command: npx skills add https://github.com/masermediagroup-stack/maser-media --skill implementing-search-filter-masermediagroup-stack

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires downshift, react-select, lodash.debounce, elasticsearch, django-filter, sqlalchemy, and includes scripts (resource) and references (resource) and assets (resource) components.

What problem does it solve? Building search and filtering functionality requires coordinating debounced inputs, accessible autocomplete, dynamic database queries, and pagination across the full stack, which is error-prone when done from scratch. ## Core Features & Use Cases - Frontend Search Components: Debounced search inputs, autocomplete with Downshift, filter panels with facet counts, and active filter chips in React/TypeScript. - Backend Query Patterns: Dynamic SQLAlchemy and Django ORM query building, PostgreSQL full-text search, Elasticsearch integration, and REST/GraphQL search API design. - Performance & Accessibility: Debounce timing calculation, request cancellation, query caching, ARIA live regions, and keyboard navigation support. - Use Case: Build an e-commerce product search with category and price filters, autocomplete suggestions, faceted counts, and a paginated FastAPI endpoint backed by PostgreSQL full-text search. ## Quick Start Use the implementing-search-filter skill to add a debounced search bar with category filters and a FastAPI search endpoint to my product catalog app.

Frequently Asked Questions about implementing-search-filter

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a debounced search input in React?▼

Create a custom useDebounce hook with useEffect and setTimeout, applying a 300ms delay to the input value before triggering the search. Cancel pending requests on new input and show loading states during fetch.

How to build dynamic search queries with SQLAlchemy?▼

Use a query builder pattern that chains filter methods for text search with ilike, exact match filters, range filters, and sorting. Add GIN indexes on tsvector columns for PostgreSQL full-text search performance.

Downshift vs React Select for autocomplete components?▼

Downshift provides headless, WAI-ARIA compliant autocomplete primitives for full styling control, while React Select offers a full-featured component with built-in async search and multi-select. Choose Downshift for custom UIs.

When should I use client-side versus server-side search?▼

Use client-side filtering for datasets under 1000 items where results update instantly in memory. Use server-side search for larger datasets with API endpoints, database queries, pagination, and caching.

How do I prevent SQL injection in search endpoints?▼

Sanitize search inputs by removing dangerous characters, validate column names against a whitelist, and use parameterized queries through the ORM. Also apply rate limiting and input length limits on search endpoints.

What ARIA attributes does an accessible autocomplete need?▼

Use role="combobox" with aria-expanded and aria-controls on the input, role="listbox" on the suggestions list, and role="option" on items. Add an aria-live region to announce result counts to screen readers.