| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2026-09-26 | 3.3 kB | |
| v0.7.0 source code.tar.gz | 2026-09-26 | 147.7 kB | |
| v0.7.0 source code.zip | 2026-09-26 | 179.3 kB | |
| Totals: 3 Items | 330.3 kB | 0 | |
Maintenance release that brings the package up to date with current React and styled-components versions and fixes the most reported bugs (#392).
Install
:::bash
npm install react-simple-chatbot styled-components
Works with React 16.3 or newer (tested with 16, 18 and 19) and styled-components 4, 5 and 6.
Bug fixes
- Duplicated messages with React 18 StrictMode. Each step now triggers the next step only once (#346, [#370], [#350], [#386], [#278], [#202])
- Autoscroll works again in Chrome 127+. It uses a
MutationObserverinstead of the removedDOMNodeInsertedevent. It no longer jumps to the bottom while you are scrolled up reading (#380, [#133], [#232], [#321], [#288], [#266]) - Server-side rendering no longer fails with
window is not definedwhenrecognitionEnableis set (#377) localStorageis only used whencacheis enabled, and storage errors (e.g. Safari private mode) are ignored (#296)- The mic button no longer crashes with non-hex theme colors (#230, [#322])
- Options without a
valueare selected by their label; before, they all selected the first option (#201) - DOM elements used as step components (e.g.
<div />) no longer produce React warnings (#261) - Cached steps are no longer spoken again, and
speechSynthesiscan be toggled after mount (#248) - The
extraControlprop type is fixed (#372) - Voice input submits the recognized text when recognition ends, and no longer restarts forever when it ends empty
- A second or remounted chatbot no longer reuses the first one's speech recognition callbacks
- A first
userstep now waits for the input - The value of a first custom step is kept
updatesteps no longer change the original step's options
New
- TypeScript declarations are included (#340)
- Updates to
stepsafter mount, and tobotAvatar,userAvatar, the delays andbotName, are used by the steps that were not rendered yet (#291, [#301], [#349], [#368], [#221]) - A closed floating chatbot starts its conversation when it is opened (#341)
- Accessibility: the input and buttons have labels, the open/close buttons work with the keyboard, and buttons use
type="button"so the chatbot doesn't submit a surrounding form (#313)
Packaging
react,react-domand the lint tools are no longer installed as dependencies. This fixes install conflicts with React 17+ and "Invalid hook call" errors, and removes the vulnerablebracesversion (#305, [#381], [#327], [#387])- Peer dependencies:
react/react-dom >=16.3andstyled-components >=4(#284, [#300]) - Props used only for styling are no longer passed to the DOM with styled-components 6
- The bundle is still ES5, and the UMD globals (
React,styled) are fixed
Behavior changes
- A closed floating chatbot no longer runs its conversation in the background. It starts on the first open.
- Updates to the
stepsprop are now applied; before, they were ignored after mount. dist/is no longer committed to the repository. It is built when the package is published or installed from git.
Thanks to everyone who reported issues and opened PRs, especially @darabos (#374), @davedotdev (#335), @LouaiTrabulsi (#351), @BranonConor (#293), @tomoki-oke-LITALICO (#328) and @vyk1 (#347), whose work was ported into this release.