This repository is part of the Bot Builder Community Project and contains Bot Builder Extensions for the JavaScript SDK, including middleware, dialogs, helpers and more. Other repos within the Bot Builder Community Project exist for extensions for .NET, Python, Java and tools - you can find our other repos under our GitHub organisation for the project.
To see a list of current extensions available for the Bot Builder JavaScript SDK, use the links below to jump to a section.
Each extension, such as middleware or recognizers, is available individually from NPM in the @botbuildercommunity
scope. See each individual component description for installation details and links.
We welcome and encourage contributions to this project, in the form of bug fixes, enhancements or new extensions. Please fork the repo and raise a PR if you have something you would like us to review for inclusion. If you want to discuss an idea first then the best way to do this right now is to raise a GitHub issue or reach out to one of us on Twitter.
The following alternative storage implementations are currently available;
Name | Description | Sample? | NPM |
---|---|---|---|
@botbuildercommunity/storage-azure-table | Use Azure Table Storage in your bot. | ||
@botbuildercommunity/storage-mongodb | Use MongoDB storage implementation in your bot. | ||
@botbuildercommunity/storage-mssql | Use Microsoft SQL Server storage implementation in your bot. | Sample |
The Azure Table Storage package has been deprecated from Microsoft's
botbuilder-js
repository, and is being taken over by the community.
The following dialogs are currently available;
Name | Description | Sample? | NPM |
---|---|---|---|
@botbuildercommunity/dialog-prompts | A variety of prompts using the Microsoft Recognizers Text suite, such as currency, temperature, age and dimension. | Sample |
The following pieces of middleware are currently available;
Name | Description | Sample? | NPM |
---|---|---|---|
@botbuildercommunity/middleware-activity-type | Simple middleware component for intercepting and automatically handling messages based on activity type. | Sample | |
@botbuildercommunity/middleware-aws-comprehend | Use Amazon's AWS Comprehend for sentiment analysis, key phrases, language detection, and entity extraction. | Sample | |
@botbuildercommunity/middleware-google-language | Use Google Cloud Platform's Natural Language API for sentiment analysis, categories, and entity extraction. | Sample | |
@botbuildercommunity/middleware-spell-check | Use Cognitive Services Spell Check API to detect misspellings and correct these. | Sample | |
@botbuildercommunity/middleware-text-analytics | Use Cognitive Services Text Analytics API for sentiment analysis, language detection, key phrases and entity extraction. | Sample | |
@botbuildercommunity/middleware-text-recognizer | Use the Microsoft Recognizers Text Suite for recognizing certain text sequences. | ||
@botbuildercommunity/middleware-watson-nlu | Use IBM Watson's NLU for sentiment analysis, key phrases, categories, concepts, emotion detection, and entity extraction. | Sample |
The following adapters can be used to expose your bot on additional channels not supported by the Azure Bot Service, such as Webex and Google Hangouts.
Name | Description | Sample? | NPM |
---|---|---|---|
@botbuildercommunity/adapter-console | A platform adapter for the console / terminal | ||
@botbuildercommunity/adapter-twilio-whatsapp | A platform adapter for Twilio WhatsApp | Sample | |
@botbuildercommunity/adapter-twitter | A platform adapter for Twitter | Sample |
The following packages are available from Botkit, and work with both the Bot Framework and Botkit:
Name | Description | NPM |
---|---|---|
botbuilder-adapter-facebook | A platform adapter for Facebook Messenger | |
botbuilder-adapter-hangouts | A platform adapter for Google | |
botbuilder-adapter-slack | A platform adapter for Slack | |
botbuilder-adapter-twilio-sms | A platform adapter for Twilio SMS | |
botbuilder-adapter-webex | A platform adapter for Webex Teams |