Skip to main content

Function: useSearch()

useSearch(query, params): UseQueryResult<SearchResultsResponse, Error>

Defined in: web/lib/hooks/use-search.ts:75

Searches preprints by query string with optional filters.

Parameters

query

string

Search query string (minimum 2 characters)

params

UseSearchParams = {}

Optional search parameters (limit, cursor, filters)

Returns

UseQueryResult<SearchResultsResponse, Error>

Query result with search results, loading state, and error

Remarks

Uses TanStack Query with a 30-second stale time. Only executes when query is at least 2 characters to prevent excessive requests.

Example

const { data, isLoading, error } = useSearch('machine learning', {
field: 'computer-science',
limit: 20,
});

if (isLoading) return <SearchSkeleton />;
if (error) return <SearchError error={error} />;

return <SearchResults hits={data.hits} total={data.total} />;

Throws

When the search API request fails