For React applications

Add Ask AI to your React app

Add an Ask AI chatbot to your React app by dropping <BielButton> or <BielSearchButton> into any layout. Readers get source-cited answers from your indexed content, in their language.

14-day freeSelf-serveLive in 15 min
Biel.ai chatbot
Powered by biel.ai
Assistant
Hi! how can I help you?
Suggested questions
enable dark mode
Assistant

To enable dark mode for Biel.ai on your website, follow these steps:

  1. Modify your website’s main HTML file.
  2. Add the attribute data-theme="dark" to the <html> tag.
html
<html data-theme="dark">
  <!-- Your existing HTML content -->
</html>

This change activates the dark mode styling for Biel.ai…

Send
AI-generated answers may contain errors. Verify official sources before use.

Used by teams that take their documentation seriously

GrepTime
ScyllaDB
SecuroSys
Katalon
Talon.one
Tezos
CrazyGames
GrepTime
ScyllaDB
SecuroSys
Katalon
Talon.one
Tezos
CrazyGames
Install

Three ways to ship Biel in React

Drop in the chatbot button, swap in an AI search field, or expose your content via MCP for AI agents. Same package, three components.
Full installation guide

Drop in <BielButton>

Install biel-react, import the component, and place it once in your top-level layout. The web component loader (defineCustomElements) registers the underlying tag on mount, and the floating Ask AI button appears.
  • Floating Ask AI button on every page
  • Pure client-side React, no SSR-specific config
  • Works on CRA, Vite, RSPack, any modern React build
  • TypeScript types ship with the package
src/App.tsx
// 1. npm install biel-react

import { useEffect } from 'react'
import { BielButton } from 'biel-react'
import { defineCustomElements } from 'biel-search/loader'
import 'biel-search/dist/biel-search/biel-search.css'

export default function App() {
  useEffect(() => { defineCustomElements() }, [])

  return (
    <>
      {/* ...your app... */}
      <BielButton
        project="<YOUR_PROJECT_ID>"
        headerTitle="Documentation AI"
        buttonPosition="bottom-right"
        buttonStyle="dark"
      >
        Ask AI
      </BielButton>
    </>
  )
}

Things teams ask during evaluation

Will it work with our React setup?

Yes. CRA, Vite, RSPack, Parcel, and custom Webpack setups all work. The package is plain React with TypeScript types — no peer dependencies on a router or framework.

Does it support TypeScript?

Yes. Types ship with biel-react. BielButton and BielSearchButton have typed props, including the full set of customization options.

Can we customize colors and styling?

Yes. Pass props for color, position, and style, or use CSS custom properties (--biel-primary-color and friends) to override at the theme level.

Does it bloat our bundle?

The widget is loaded as a web component. biel-react contributes a thin wrapper; the heavy lifting is in biel-search, which is lazy-loaded on first use.

Where does Biel index from?

Configure your data sources in the Biel.ai dashboard. URL crawl, GitHub repo, Confluence, file upload — same indexing layer regardless of which framework hosts the widget.

How long does the install take?

npm install, one component, one effect. Most teams are live in 15 minutes including indexing.

Where does our content go?

EU-hosted by default. GDPR compliant. Your content is never used to train models.

Make your React app answer questions

14-day free trial · No credit card required · From $50/mo
Use a different platform? See our integration pages for Next.js, Gatsby, Vue, Docusaurus, and MkDocs.
Try me ↓