How search works
When you type a query in the home screen search bar, theSearchAPI function fires two requests simultaneously:
- Full-text search — matches Spaces whose
titleordescriptioncontain the query string. - Tag search — finds Spaces whose
tagsarray contains a tag that matches the query exactly.
Passing an empty or whitespace-only string to
SearchAPI short-circuits both network calls and returns empty arrays immediately.API endpoints
Full-text search — GET /api/spaces/search
Full-text search — GET /api/spaces/search
Searches Space titles and descriptions for the provided query string.The
q parameter is URL-encoded before the request is made. No authentication is required. Returns an array of SearchResult objects.Tag search — GET /api/spaces/tag/:tag
Tag search — GET /api/spaces/tag/:tag
Finds Spaces that have a tag matching the given string exactly.No authentication is required. Returns an array of
SearchResult objects. The tag value is passed as a path segment, not a query parameter.SearchResult type
Both endpoints return the sameSearchResult shape, which mirrors the Space type:
| Field | Description |
|---|---|
space_id | Unique Space identifier, used to navigate into the Space |
title | Display name of the Space |
description | Topic description |
visibility | Always "public" in search results |
creator | Author details including avatar URL |
participant_count | Current number of participants |
tags | All hashtags attached to the Space |
Interpreting results in the UI
The search screen presents two labelled sections:- Tag results — Spaces that have a tag matching your query. These tend to be the most relevant because tag matching is exact.
- General results — Spaces whose title or description contains your query. Broader but useful for discovering Spaces you might not know the exact tag for.
