A search field that filters questions as you type and highlights every match, popular keyword chips, a smooth accordion and a friendly empty state with a contact button.
Search answers about billing, security and your workspace. Most questions are answered in under a minute.
Open Billing, pick the invoice and choose Request refund. Refunds for annual plans are prorated and land on the original card within 5 to 10 business days.
Yes. Upgrades apply immediately and you only pay the difference for the days left. Downgrades take effect at the start of your next cycle.
SAML SSO with Okta, Microsoft Entra ID and Google Workspace is included on the Business plan. SCIM provisioning keeps seats in sync automatically.
Workspaces are hosted in Frankfurt or Virginia, chosen at sign-up. Data is encrypted at rest with AES-256 and in transit with TLS 1.3.
Go to Settings, then Data, then Export. You get a ZIP with CSV and JSON files for every project, plus original attachments, usually within ten minutes.
A seat is any member who can edit. Viewers and guests are free and unlimited, so you can share boards with clients without paying extra.
The REST and GraphQL APIs are available on every plan. The limit is 600 requests per minute per workspace, and webhooks do not count toward it.
Invite guests by email to individual projects. They only see what you share with them and can be removed in one click from the member list.
Still stuck? Contact support
npx shadcn@latest add https://hyperblur.dev/r/faq-search.jsonWorks in any React project set up with the shadcn CLI. The file lands in components/hyperblur/faq-search.tsx.
import { FaqSearch } from "@/components/hyperblur/faq-search"
<FaqSearch items={[{ question: "How do I get a refund?", answer: "Open Billing and choose Request refund.", category: "Billing" }]} />| Prop | Type | Default | Description |
|---|---|---|---|
| title | string | "How can we help?" | Section heading. |
| subtitle | string | sample text | Supporting line under the heading. |
| items | { question: string; answer: string; category?: string }[] | 8 sample questions | Questions to search. Question, answer and category are all matched, every word must appear. |
| placeholder | string | "Search questions, for example refunds" | Search input placeholder. |
| suggestions | string[] | ["refund", "SSO", "export", "seats", "API"] | Keyword chips under the field. Clicking one fills the search. |
| contact | { label: string; href: string } | null | { label: "Contact support", href: "#support" } | Support link in the footer line and the empty state. |
| accent | string | "#22d3ee" | Accent for focus, highlights and the open icon. |
| defaultQuery | string | "" | Search text on first render. |
| onSearch | (query: string, results: number) => void | Called on every change with the query and the number of matches. |