diff --git a/web/.storybook/stories-category-doc-pages/WebComponents.stories.mdx b/web/.storybook/stories-category-doc-pages/WebComponents.stories.mdx index beeb45a1d..0dcea6d8b 100644 --- a/web/.storybook/stories-category-doc-pages/WebComponents.stories.mdx +++ b/web/.storybook/stories-category-doc-pages/WebComponents.stories.mdx @@ -68,6 +68,33 @@ But why _this_ style? See the discussion on the PR that introduced this pattern: [#2082](https://github.com/owncast/owncast/pull/2082). +## Error Boundaries + +Components that have substantial state and internal functionality should be wrapped in an [Error Boundary](https://reactjs.org/docs/error-boundaries.html). This allows for catching unexpected errors and displaying a fallback UI. + +Components that are stateless views are unlikely to throw exceptions and don't require an error boundary. + +The `ComponentError` component is a pre-built error state that can be used to display an error message and a bug reporting button. + +### Example + +```tsx +import { ErrorBoundary } from 'react-error-boundary'; + + ( + + )} + > + +