microsoft/BotFramework-WebChat
HTML
Captured source
source ↗microsoft/BotFramework-WebChat
Description: A highly-customizable web-based client for Azure Bot Services.
Language: HTML
License: MIT
Stars: 1776
Forks: 1603
Open issues: 513
Created: 2016-07-07T23:16:57Z
Pushed: 2026-06-10T21:55:23Z
Default branch: main
Fork: no
Archived: no
README:
!Bot Framework Web Chat
Click here to find out what is new in Web Chat
Bot Framework Web Chat
 
This repository contains code for the Bot Framework Web Chat component. The Bot Framework Web Chat component is a highly-customizable web-based client for the Bot Framework v4 SDK. The Bot Framework SDK v4 enables developers to model conversation and build sophisticated bot applications.
This repository is part of the Microsoft Bot Framework - a comprehensive framework for building enterprise-grade conversational AI experiences.
Web Chat supports Content Security Policy (CSP). Web developers are recommended to enable CSP to improve security and protect conversations. You can read more about CSP in this article.
Note: The Bot Framework SDK was archived on GitHub on December 2025. *This* Web Chat component specifically is *not* archived, and still is available on GitHub as under the related licences covered in this readme.
Version notes
> This section points out important version notes. For further information, please see the related links and check the `CHANGELOG.md`
Notes: web developers are advised to use `~` (tilde range) to select minor versions, which contains new features and/or fixes. Use `^` (caret range) to select major versions, which may contains breaking changes.
4.19.0 notable changes
- Supports informative message in [livestreaming](./docs/LIVESTREAMING.md)
4.18.0 notable changes
In this release, we are focusing on performance improvements, including memory and load time optimizations.
4.17.0 notable changes
Support livestreaming response
Bots can now livestream their responses. Before Bot Framework SDK support this feature, bot authors can follow the details in [LIVESTREAMING.md](./docs/LIVESTREAMING.md) to construct the livestream responses.
Debut of ES Modules
Web Chat now exports as ES Modules (named exports) along with CommonJS (named and unnamed exports).
Improvement to file upload experience
End-user can now add a message and confirm before uploading their file to the bot. To opt-out of the new experience, pass sendAttachmentOn: 'send' in style options.
Theme pack support
We are excited to add theme pack support. Developers can now pack all their customization in a single package and publish it to NPM.
Experimental Fluent UI theme pack
We are excited to announce Fluent UI theme pack is in the work and is currently in experimental phase. This theme pack is designed for web developers who want to bring a native Copilot user experience to their customers.
We will continue to add new features and support both white-label experience and Fluent UI experience with the same level of parity.
You can wrap Web Chat with `` to try out the new experience.
import ReactWebChat from 'botframework-webchat';
import { FluentThemeProvider } from 'botframework-webchat-fluent-theme';
export default function MyComponent() {
return (
);
}Support HTML-in-Markdown
Web Chat will now render HTML-in-Markdown. We have ported our sanitizer and accessibility fixer to work on HTML level. Both Markdown and HTML-in-Markdown will receive the same treatment and meet our security and accessibility requirements.
You can turn off this option by setting styleOptions.markdownRenderHTML to false.
4.16.1 notable changes
Web Chat now supports Adaptive Cards schema up to 1.6. Some features in Adaptive Cards are in preview or designed to use outside of Bot Framework. Web Chat does not support these features.
4.16.0 notable changes
Starting from 4.16.0, Internet Explorer is no longer supported. After more than a year of the Internet Explorer 11 officially retirement, we decided to stop supporting Internet Explorer. This will help us to bring new features to Web Chat. 4.15.9 is the last version which supports Internet Explorer in limited fashion.
4.12.1 patch: New style property adaptiveCardsParserMaxVersion
Web Chat 4.12.1 patch includes a new style property allowing developers to choose the max Adaptive Cards schema version. See PR #3778 for code changes.
To specify a different max version, you can adjust the style options, shown below:
window.WebChat.renderWebChat(
{
directLine,
store,
styleOptions: {
adaptiveCardsParserMaxVersion: '1.2'
}
},
document.getElementById('webchat')
);- Web Chat will apply the maximum schema available according to the Adaptive Cards version (as of this patch, schema 1.3) by default.
- An invalid version will revert to Web Chat's default.
Visual focus changes to transcript in Web Chat 4.12.0
A new accessibility update has been added to Web Chat from PR #3703. This change creates visual focus for the transcript (bold black border) and aria-activedescendent focused activity (black dashed border) by default. Where applicable, transcriptVisualKeyboardIndicator... values will also be applied to…
Excerpt shown — open the source for the full document.