Configure the auto close behavior of the dropdown: - {`true`} - the dropdown will be closed by clicking outside or inside the dropdown menu. - {`false`} - the dropdown will be closed by clicking the toggle button and manually calling hide or toggle method. (Also will not be closed by pressing esc key) - {`'inside'`} - the dropdown will be closed (only) by clicking inside the dropdown menu. - {`'outside'`} - the dropdown will be closed (only) by clicking outside the dropdown menu.
{`Element`}, {`DocumentFragment`}, {`(() => Element | DocumentFragment)`}
-
Appends the react dropdown menu to a specific element. You can pass an HTML element or function that returns a single element. By default {`document.body`}.
+
+
Appends the React Dropdown Menu to a specific element. You can pass an HTML element or a function returning an element. Defaults to {`document.body`}.
Describes the placement of your component after Popper.js has applied all the modifiers that may have flipped or altered the originally provided placement property.
+
+
Determines the placement of the React Dropdown Menu after Popper.js modifiers.
Provides a custom Popper.js configuration or a function that returns a modified Popper.js configuration for advanced positioning of the React Dropdown Menu. Read more
Similarly, create split button dropdowns with virtually the same markup as single button dropdowns, but with the addition of {`.dropdown-toggle-split`} className for proper spacing around the dropdown caret.
+
+
Similarly, create split button dropdowns with virtually the same markup as single button dropdowns, but with the addition of {`.dropdown-toggle-split`} className for proper spacing around the dropdown caret.
Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
+
+
Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
Provide valuable, actionable valid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
+
+
Provide valuable, actionable valid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
+
+
Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
Provide valuable, actionable valid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
+
+
Provide valuable, actionable valid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
+
+
Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
Provide valuable, actionable valid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
+
+
Provide valuable, actionable valid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
@@ -29,119 +31,149 @@ import CFormInput from '@coreui/react/src/components/form/CFormInput'
{`number`}, {`boolean`}
-
Delay onChange event while typing. If set to true onChange event will be delayed 500ms, you can also provide the number of milliseconds you want to delay the onChange event.
+
+
Delay onChange event while typing. If set to true onChange event will be delayed 500ms, you can also provide the number of milliseconds you want to delay the onChange event.
Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
+
+
Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
Provide valuable, actionable valid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
+
+
Provide valuable, actionable valid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
Render the component styled as plain text. Removes the default form field styling and preserve the correct margin and padding. Recommend to use only along side {`readonly`}.
+
+
Render the component styled as plain text. Removes the default form field styling and preserve the correct margin and padding. Recommend to use only along side {`readonly`}.
Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
+
+
Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
Provide valuable, actionable valid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
+
+
Provide valuable, actionable valid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
+
+
Provide valuable, actionable invalid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
Provide valuable, actionable valid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
+
+
Provide valuable, actionable valid feedback when using standard HTML form validation which applied two CSS pseudo-classes, {`:invalid`} and {`:valid`}.
Render the component styled as plain text. Removes the default form field styling and preserve the correct margin and padding. Recommend to use only along side {`readonly`}.
+
+
Render the component styled as plain text. Removes the default form field styling and preserve the correct margin and padding. Recommend to use only along side {`readonly`}.
Callback fired when the modal is shown, its backdrop is static and a click outside the modal or an escape key press is performed with the keyboard option set to false.
+
+
Callback fired when the modal is shown, its backdrop is static and a click outside the modal or an escape key press is performed with the keyboard option set to false.
@@ -53,15 +68,28 @@ import CPopover from '@coreui/react/src/components/popover/CPopover'
{`number`}, {`{ show: number; hide: number; }`}
-
The delay for displaying and hiding the popover (in milliseconds). When a numerical value is provided, the delay applies to both the hide and show actions. The object structure for specifying the delay is as follows: delay: {`{ 'show': 500, 'hide': 100 }`}.
+
+
Delay (in milliseconds) before showing or hiding the React Popover.
+
+
If a number is provided, that delay applies to both "show" and "hide".
+
If an object is provided, use separate values for "show" and "hide".
+
+ ...
+
+// Delays 500ms on show and 100ms on hide
+...`} />
+
Specify the desired order of fallback placements by providing a list of placements as an array. The placements should be prioritized based on preference.
+
+
Specifies the fallback placements when the preferred {`placement`} cannot be met.
Describes the placement of your component after Popper.js has applied all the modifiers that may have flipped or altered the originally provided placement property.
+
+
Allows customization of the Popper.js configuration for the React Popover.
+Can be an object or a function returning a modified configuration.
+Learn more
Prop for table columns configuration. If prop is not defined, table will display columns based on the first item keys, omitting keys that begins with underscore (e.g. '_props')
In columns prop each array item represents one column. Item might be specified in two ways: String: each item define column name equal to item value. Object: item is object with following keys available as column configuration: - key (required)(String) - define column name equal to item key. - label (String) - define visible label of column. If not defined, label will be generated automatically based on column name, by converting kebab-case and snake_case to individual words and capitalization of each word. - _props (Object) - adds classes to all cels in column, ex. {`_props: { scope: 'col', className: 'custom-class' }`}, - _style (Object) - adds styles to the column header (useful for defining widths)
+
+
Prop for table columns configuration. If prop is not defined, table will display columns based on the first item keys, omitting keys that begins with underscore (e.g. '_props')
+
In columns prop each array item represents one column. Item might be specified in two ways:
+String: each item define column name equal to item value.
+Object: item is object with following keys available as column configuration:
+
+
key (required)(String) - define column name equal to item key.
+
label (String) - define visible label of column. If not defined, label will be generated automatically based on column name, by converting kebab-case and snake_case to individual words and capitalization of each word.
+
_props (Object) - adds classes to all cels in column, ex. {`_props: { scope: 'col', className: 'custom-class' }`},
+
_style (Object) - adds styles to the column header (useful for defining widths)
Array of objects, where each object represents one item - row in table. Additionally, you can add style classes to each row by passing them by '_props' key and to single cell by '_cellProps'.
Array of objects, where each object represents one item - row in table. Additionally, you can add style classes to each row by passing them by 'props' key and to single cell by 'cellProps'.
Specifies the type of button. Always specify the type attribute for the {`\`} element. Different browsers may use different default types for the {`\`} element.
+
+
Specifies the type of button. Always specify the type attribute for the {``} element.
+Different browsers may use different default types for the {``} element.
@@ -53,15 +67,28 @@ import CTooltip from '@coreui/react/src/components/tooltip/CTooltip'
{`number`}, {`{ show: number; hide: number; }`}
-
The delay for displaying and hiding the tooltip (in milliseconds). When a numerical value is provided, the delay applies to both the hide and show actions. The object structure for specifying the delay is as follows: delay: {`{ 'show': 500, 'hide': 100 }`}.
+
+
The delay (in milliseconds) before showing or hiding the React Tooltip.
+
+
If provided as a number, the delay is applied to both "show" and "hide".
+
If provided as an object, it should have distinct "show" and "hide" values.
+
+ ...
+
+// Delays 500ms on show and 100ms on hide
+...`} />
+
Specify the desired order of fallback placements by providing a list of placements as an array. The placements should be prioritized based on preference.
+
+
Array of fallback placements for the React Tooltip to use when the preferred placement cannot be achieved. These placements are tried in order.
Initial placement of the React Tooltip. Note that Popper.js modifiers may alter this placement automatically if there's insufficient space in the chosen position.
Describes the placement of your component after Popper.js has applied all the modifiers that may have flipped or altered the originally provided placement property.
+
+
Customize the Popper.js configuration used to position the React Tooltip. Pass either an object or a function returning a modified config. Learn more
diff --git a/packages/docs/content/api/CoreUIProvider.api.mdx b/packages/docs/content/api/CoreUIProvider.api.mdx
deleted file mode 100644
index 17f75a27..00000000
--- a/packages/docs/content/api/CoreUIProvider.api.mdx
+++ /dev/null
@@ -1,7 +0,0 @@
-
-```jsx
-import { CoreUIProvider } from '@coreui/src'
-// or
-import CoreUIProvider from '@coreuireact/src/api/coreuivider/CoreUIProvider'
-```
-
diff --git a/packages/docs/content/components/accordion/accessibility.mdx b/packages/docs/content/components/accordion/accessibility.mdx
index 03615822..8dd1f95b 100644
--- a/packages/docs/content/components/accordion/accessibility.mdx
+++ b/packages/docs/content/components/accordion/accessibility.mdx
@@ -9,13 +9,13 @@ route: /components/accordion/
Accordions are a common UI pattern used to toggle the visibility of content. Ensuring that accordions are accessible is crucial for users who rely on assistive technologies. This guide demonstrates how to create an accessible accordion using CoreUI React components, adhering to the [WAI-ARIA Accordion Design Pattern](https://www.w3.org/WAI/ARIA/apg/patterns/accordion/).
-## Semantic Structure
+### Semantic Structure
- **Button Headers**: Each accordion header is rendered as a native `` element. This ensures that headers are inherently focusable and operable via keyboard without additional scripting.
- **Proper HTML Elements**: Utilizes appropriate HTML elements (``, `
`, etc.) to convey the correct semantic meaning, enhancing compatibility with screen readers and other assistive technologies.
-## ARIA Attributes
+### ARIA Attributes
CoreUI React Accordion incorporates essential ARIA attributes to communicate the state and relationships of accordion items to assistive technologies:
@@ -25,18 +25,18 @@ CoreUI React Accordion incorporates essential ARIA attributes to communicate the
- **`id`**: Unique identifiers for both headers and panels establish clear relationships, ensuring that screen readers can accurately describe the accordion structure.
-## Focus Management
+### Focus Management
- **Automatic Focus Handling**: When an accordion panel is expanded or collapsed, focus is managed to ensure a seamless user experience. This prevents focus from being lost or trapped within the accordion, maintaining accessibility standards.
-## Visual Indicators
+### Visual Indicators
- **Focus Styles**: Clear visual indicators are provided for focused elements, aiding users who navigate via keyboard.
- **Active States**: Distinct styling for active (expanded) accordion items helps users identify the current state of each section.
-## Keyboard Support
+### Keyboard Support
The Accordion component supports comprehensive keyboard navigation out of the box:
diff --git a/packages/docs/content/components/accordion/bootstrap.mdx b/packages/docs/content/components/accordion/bootstrap.mdx
new file mode 100644
index 00000000..59c789e9
--- /dev/null
+++ b/packages/docs/content/components/accordion/bootstrap.mdx
@@ -0,0 +1,34 @@
+---
+title: React Bootstrap Accordion Component
+name: Accordion with Bootstrap Styling
+description: Learn how to create vertically collapsing Bootstrap-style accordions using CoreUI’s React components.
+route: /components/accordion/
+bootstrap_component: true
+---
+
+## How to use React Bootstrap Accordion component
+
+Use CoreUI's React components styled with Bootstrap to build interactive and collapsible accordion sections.
+
+
+
+### Flush style
+
+Add the `flush` prop to remove default borders, background colors, and border radius — making the accordion items align flush with their container, following Bootstrap’s visual style.
+
+
+
+### Always open behavior
+
+Use the `alwaysOpen` property to keep multiple accordion items expanded at the same time, mimicking Bootstrap’s multiple-item open functionality.
+
+
+
+## API reference
+
+Refer to the API documentation for detailed descriptions of all the available props and components used to create Bootstrap-styled accordions in React.
+
+- [<CAccordion />](../api/#caccordion)
+- [<CAccordionBody />](../api/#caccordionbody)
+- [<CAccordionHeader />](../api/#caccordionheader)
+- [<CAccordionItem />](../api/#caccordionitem)
\ No newline at end of file
diff --git a/packages/docs/content/components/accordion/examples/AccordionExample.tsx b/packages/docs/content/components/accordion/examples/AccordionExample.tsx
index cc6598d0..e46f34ef 100644
--- a/packages/docs/content/components/accordion/examples/AccordionExample.tsx
+++ b/packages/docs/content/components/accordion/examples/AccordionExample.tsx
@@ -5,7 +5,7 @@ export const AccordionExample = () => {
return (
- Accordion Item #1 TSX
+ Accordion Item #1This is the first item's accordion body. It is hidden by default,
until the collapse plugin adds the appropriate classes that we use to style each element.
diff --git a/packages/docs/content/components/accordion/index.mdx b/packages/docs/content/components/accordion/index.mdx
index 491ea4bf..6bacb217 100644
--- a/packages/docs/content/components/accordion/index.mdx
+++ b/packages/docs/content/components/accordion/index.mdx
@@ -2,41 +2,34 @@
title: React Accordion Component
name: Accordion
description: Build vertically collapsing accordions in combination with our React Accordion component.
-menu: Components
route: /components/accordion/
other_frameworks: accordion
-pro_component: false
---
## How to use React Accordion component.
Click the accordions below to expand/collapse the accordion content.
-import { AccordionExample } from './examples/AccordionExample.tsx'
-import AccordionExampleTS from '!!raw-loader!./examples/AccordionExample.tsx'
-
-
-
-
+
### Flush
Add `flush` to remove the default `background-color`, some borders, and some rounded corners to render accordions edge-to-edge with their parent container.
-import { AccordionFlushExample } from './examples/AccordionFlushExample.tsx'
-import AccordionFlushExampleTS from '!!raw-loader!./examples/AccordionFlushExample.tsx'
-
-
-
-
+
### Always open
Add `alwaysOpen` property to make react accordion items stay open when another item is opened.
-import { AccordionAlwaysOpenExample } from './examples/AccordionAlwaysOpenExample.tsx'
-import AccordionAlwaysOpenExampleTS from '!!raw-loader!./examples/AccordionAlwaysOpenExample.tsx'
+
+
+## API
+
+Check out the documentation below for a comprehensive guide to all the props you can use with the components mentioned here.
+
+- [<CAccordion />](./api/#caccordion)
+- [<CAccordionBody />](./api/#caccordionbody)
+- [<CAccordionHeader />](./api/#caccordionheader)
+- [<CAccordionItem />](./api/#caccordionitem)
-
-
-
diff --git a/packages/docs/content/components/accordion/styling.mdx b/packages/docs/content/components/accordion/styling.mdx
index 5f48c98a..17dadcea 100644
--- a/packages/docs/content/components/accordion/styling.mdx
+++ b/packages/docs/content/components/accordion/styling.mdx
@@ -5,21 +5,6 @@ description: Learn how to customize the React Accordion component with CSS class
route: /components/accordion/
---
-import CAccordion from '@coreui/react'
-
-### CSS class names
-
-React Accordion comes with built-in class names that make styling super simple. Here’s a quick rundown of what you can use:
-
-
-
### CSS variables
React Accordion supports CSS variables for easy customization. These variables are set via SASS but allow direct overrides in your stylesheets or inline styles.
diff --git a/packages/docs/content/components/alert.mdx b/packages/docs/content/components/alert.mdx
deleted file mode 100644
index bb802c4b..00000000
--- a/packages/docs/content/components/alert.mdx
+++ /dev/null
@@ -1,262 +0,0 @@
----
-title: React Alert Component
-name: Alert
-description: React alert component gives contextual feedback information for common user operations. The alert component is delivered with a bunch of usable and adjustable alert messages.
-menu: Components
-route: /components/alert
-other_frameworks: alert
----
-
-import { useState } from 'react'
-import { CAlert, CAlertHeading, CAlertLink, CButton } from '@coreui/react/src/index'
-
-import CIcon from '@coreui/icons-react'
-
-import { cilBurn, cilCheckCircle, cilInfo, cilWarning } from '@coreui/icons'
-
-## How to use React Alert Component.
-
-React Alert is prepared for any length of text, as well as an optional close button. For a styling, use one of the **required** contextual `color` props (e.g., `primary`). For inline dismissal, use the [dismissing prop](#dismissing).
-
-```jsx preview
-
- A simple primary alert—check it out!
-
-
- A simple secondary alert—check it out!
-
-
- A simple success alert—check it out!
-
-
- A simple danger alert—check it out!
-
-
- A simple warning alert—check it out!
-
-
- A simple info alert—check it out!
-
-
- A simple light alert—check it out!
-
-
- A simple dark alert—check it out!
-
-```
-
-
- Using color to add meaning only provides a visual indication, which will not be conveyed to
- users of assistive technologies – such as screen readers. Ensure that information denoted by the
- color is either obvious from the content itself (e.g. the visible text), or is included through
- alternative means, such as additional text hidden with the `.visually-hidden` class.
-
-
-### Live example
-
-Click the button below to show an alert (hidden with inline styles to start), then dismiss (and destroy) it with the built-in close button.
-
-export const LiveExample = () => {
- const [visible, setVisible] = useState(false)
- return (
- <>
- setVisible(false)}>A simple primary alert—check it out!
-
- setVisible(true)}>Show live alert
- >
- )
-}
-
-
-
-
-
-```jsx
-const [visible, setVisible] = useState(false)
-return (
- <>
- setVisible(false)}>
- A simple primary alert—check it out!
-
- setVisible(true)}>
- Show live alert
-
- >
-)
-```
-
-### Link color
-
-Use the `` component to immediately give matching colored links inside any react alert component.
-
-```jsx preview
-
- A simple primary alert with an example link. Give it a click if you like.
-
-
- A simple secondary alert with an example link. Give it a click if you like.
-
-
- A simple success alert with an example link. Give it a click if you like.
-
-
- A simple danger alert with an example link. Give it a click if you like.
-
-
- A simple warning alert with an example link. Give it a click if you like.
-
-
- A simple info alert with an example link. Give it a click if you like.
-
-
- A simple light alert with an example link. Give it a click if you like.
-
-
- A simple dark alert with an example link. Give it a click if you like.
-
-```
-
-### Additional content
-
-React Alert can also incorporate supplementary components & elements like heading, paragraph, and divider.
-
-```jsx preview
-
- Well done!
-
- Aww yeah, you successfully read this important alert message. This example text is going to run
- a bit longer so that you can see how spacing within an alert works with this kind of content.
-
-
-
- Whenever you need to, be sure to use margin utilities to keep things nice and tidy.
-
-
-```
-
-### Icons
-
-Similarly, you can use [flexbox utilities](https//coreui.io/docs/4.0/utilities/flex") and [CoreUI Icons](https://icons.coreui.io) to create react alerts with icons. Depending on your icons and content, you may want to add more utilities or custom styles.
-
-```jsx preview
-
-
-
An example alert with an icon
-
-```
-
-Need more than one icon for your react alerts? Consider using [CoreUI Icons](https://icons.coreui.io).
-
-```jsx preview
-
-
-
An example alert with an icon
-
-
-
-
An example success alert with an icon
-
-
-
-
An example warning alert with an icon
-
-
-
-
An example danger alert with an icon
-
-```
-
-### Solid
-
-Use `variant="solid"` to change contextual colors to solid.
-
-```jsx preview
-A simple solid primary alert—check it out!
-A simple solid secondary alert—check it out!
-A simple solid success alert—check it out!
-A simple solid danger alert—check it out!
-A simple solid warning alert—check it out!
-A simple solid info alert—check it out!
-A simple solid light alert—check it out!
-A simple solid dark alert—check it out!
-```
-
-### Dismissing
-
-React Alert component can also be easily dismissed. Just add the `dismissible` prop.
-
-```jsx preview
- {
- alert('👋 Well, hi there! Thanks for dismissing me.')
- }}
->
- Go right ahead and click that dimiss over there on the right.
-
-```
-
-
- When an alert is dismissed, the element is completely removed from the page structure. If a
- keyboard user dismisses the alert using the close button, their focus will suddenly be lost and,
- depending on the browser, reset to the start of the page/document.
-
-
-## Customizing
-
-### CSS variables
-
-React alerts use local CSS variables on `.alert` for enhanced real-time customization. Values for the CSS variables are set via Sass, so Sass customization is still supported, too.
-
-
-
-#### How to use CSS variables
-
-```jsx
-const vars = {
- '--my-css-var': 10,
- '--my-another-css-var': 'red',
-}
-return ...
-```
-
-### SASS variables
-
-
-
-## API
-
-### CAlert
-
-`markdown:CAlert.api.mdx`
-
-### CAlertHeading
-
-`markdown:CAlertHeading.api.mdx`
-
-### CAlertLink
-
-`markdown:CAlertLink.api.mdx`
diff --git a/packages/docs/content/components/alert/api.mdx b/packages/docs/content/components/alert/api.mdx
new file mode 100644
index 00000000..287df6f8
--- /dev/null
+++ b/packages/docs/content/components/alert/api.mdx
@@ -0,0 +1,22 @@
+---
+title: React Alert Component API
+name: Alert API
+description: Explore the API reference for the React Alert component and discover how to effectively utilize its props for customization.
+route: /components/alert/
+---
+
+import CAlertAPI from '../../api/CAlert.api.mdx'
+import CAlertHeadingAPI from '../../api/CAlertHeading.api.mdx'
+import CAlertLinkAPI from '../../api/CAlertLink.api.mdx'
+
+## CAlert
+
+
+
+## CAlertHeading
+
+
+
+## CAlertLink
+
+
diff --git a/packages/docs/content/components/alert/bootstrap.mdx b/packages/docs/content/components/alert/bootstrap.mdx
new file mode 100644
index 00000000..225a0735
--- /dev/null
+++ b/packages/docs/content/components/alert/bootstrap.mdx
@@ -0,0 +1,70 @@
+---
+title: React Bootstrap Alert Component
+name: Alert with Bootstrap Styling
+description: Learn how to use CoreUI’s React Alert component styled with Bootstrap for contextual feedback messages and dismissible UI alerts.
+menu: Components
+route: /components/alert/
+bootstrap_component: true
+---
+
+## How to use React Bootstrap Alert component
+
+CoreUI’s React Bootstrap Alerts provide contextual feedback messages for typical user interactions. Each alert supports Bootstrap-based colors and can include additional content and dismiss functionality.
+
+
+
+
+
+### Live example
+
+Click the button below to display an alert (initially hidden), then dismiss it using the built-in close button — styled the Bootstrap way.
+
+
+
+### Link color
+
+To include links inside your alert, use the `` component — it automatically adopts the contextual Bootstrap color of the parent alert.
+
+
+
+### Additional content
+
+React Bootstrap Alerts can include extra structured content such as headings, paragraphs, and horizontal rules for enhanced readability.
+
+
+
+### Icons
+
+Use CoreUI Icons and flexbox utilities to add icons to your alerts. Combine them with spacing utilities for precise layout control.
+
+
+
+Need more than one icon in your alert? CoreUI Icons can be stacked or arranged using flex utilities.
+
+
+
+### Solid style
+
+Add `variant="solid"` to give the alert a solid background color, in line with Bootstrap’s solid alert variants.
+
+
+
+### Dismissing
+
+Use the `dismissible` prop to allow users to close the alert. This will completely remove it from the DOM.
+
+
+
+
+ When an alert is dismissed, the element is completely removed from the page structure. If a
+ keyboard user dismisses the alert using the close button, their focus will suddenly be lost and,
+ depending on the browser, reset to the start of the page/document.
+
+
+## API reference
+
+Review the API documentation for detailed information about the props available in the Bootstrap-styled React Alert component.
+
+- [<CAlert />](../api/#calert)
+- [<CAlertHeading />](../api/#calertheading)
+- [<CAlertLink />](../api/#calertlink)
diff --git a/packages/docs/content/components/alert/examples/AlertAdditionalContentExample.tsx b/packages/docs/content/components/alert/examples/AlertAdditionalContentExample.tsx
new file mode 100644
index 00000000..d51a8ea1
--- /dev/null
+++ b/packages/docs/content/components/alert/examples/AlertAdditionalContentExample.tsx
@@ -0,0 +1,19 @@
+import React from 'react'
+import { CAlert, CAlertHeading } from '@coreui/react'
+
+export const AlertAdditionalContentExample = () => {
+ return (
+
+ Well done!
+
+ Aww yeah, you successfully read this important alert message. This example text is going to
+ run a bit longer so that you can see how spacing within an alert works with this kind of
+ content.
+
+
+
+ Whenever you need to, be sure to use margin utilities to keep things nice and tidy.
+
+
+ )
+}
diff --git a/packages/docs/content/components/alert/examples/AlertDismissingExample.tsx b/packages/docs/content/components/alert/examples/AlertDismissingExample.tsx
new file mode 100644
index 00000000..0e3825ab
--- /dev/null
+++ b/packages/docs/content/components/alert/examples/AlertDismissingExample.tsx
@@ -0,0 +1,16 @@
+import React from 'react'
+import { CAlert } from '@coreui/react'
+
+export const AlertDismissingExample = () => {
+ return (
+ {
+ alert('👋 Well, hi there! Thanks for dismissing me.')
+ }}
+ >
+ Go right ahead and click that dimiss over there on the right.
+
+ )
+}
diff --git a/packages/docs/content/components/alert/examples/AlertExample.tsx b/packages/docs/content/components/alert/examples/AlertExample.tsx
new file mode 100644
index 00000000..b9454ba7
--- /dev/null
+++ b/packages/docs/content/components/alert/examples/AlertExample.tsx
@@ -0,0 +1,17 @@
+import React from 'react'
+import { CAlert } from '@coreui/react'
+
+export const AlertExample = () => {
+ return (
+ <>
+ A simple primary alert—check it out!
+ A simple secondary alert—check it out!
+ A simple success alert—check it out!
+ A simple danger alert—check it out!
+ A simple warning alert—check it out!
+ A simple info alert—check it out!
+ A simple light alert—check it out!
+ A simple dark alert—check it out!
+ >
+ )
+}
diff --git a/packages/docs/content/components/alert/examples/AlertIcons1Example.tsx b/packages/docs/content/components/alert/examples/AlertIcons1Example.tsx
new file mode 100644
index 00000000..7c47cc48
--- /dev/null
+++ b/packages/docs/content/components/alert/examples/AlertIcons1Example.tsx
@@ -0,0 +1,33 @@
+import React from 'react'
+import { CAlert } from '@coreui/react'
+
+export const AlertIcons1Example = () => {
+ return (
+
+
+
+
+ >
+ )
+}
diff --git a/packages/docs/content/components/alert/examples/AlertLinkColorExample.tsx b/packages/docs/content/components/alert/examples/AlertLinkColorExample.tsx
new file mode 100644
index 00000000..aa5e47ce
--- /dev/null
+++ b/packages/docs/content/components/alert/examples/AlertLinkColorExample.tsx
@@ -0,0 +1,41 @@
+import React from 'react'
+import { CAlert, CAlertLink } from '@coreui/react'
+
+export const AlertLinkColorExample = () => {
+ return (
+ <>
+
+ A simple primary alert with an example link. Give it a
+ click if you like.
+
+
+ A simple secondary alert with an example link. Give it a
+ click if you like.
+
+
+ A simple success alert with an example link. Give it a
+ click if you like.
+
+
+ A simple danger alert with an example link. Give it a
+ click if you like.
+
+
+ A simple warning alert with an example link. Give it a
+ click if you like.
+
+
+ A simple info alert with an example link. Give it a click
+ if you like.
+
+
+ A simple light alert with an example link. Give it a click
+ if you like.
+
+
+ A simple dark alert with an example link. Give it a click
+ if you like.
+
+ >
+ )
+}
diff --git a/packages/docs/content/components/alert/examples/AlertLiveExample.tsx b/packages/docs/content/components/alert/examples/AlertLiveExample.tsx
new file mode 100644
index 00000000..68584534
--- /dev/null
+++ b/packages/docs/content/components/alert/examples/AlertLiveExample.tsx
@@ -0,0 +1,16 @@
+import React, { useState } from 'react'
+import { CAlert, CButton } from '@coreui/react'
+
+export const AlertLiveExample = () => {
+ const [visible, setVisible] = useState(false)
+ return (
+ <>
+ setVisible(false)}>
+ A simple primary alert—check it out!
+
+ setVisible(true)}>
+ Show live alert
+
+ >
+ )
+}
diff --git a/packages/docs/content/components/alert/examples/AlertSolidExample.tsx b/packages/docs/content/components/alert/examples/AlertSolidExample.tsx
new file mode 100644
index 00000000..98917b57
--- /dev/null
+++ b/packages/docs/content/components/alert/examples/AlertSolidExample.tsx
@@ -0,0 +1,33 @@
+import React from 'react'
+import { CAlert } from '@coreui/react'
+
+export const AlertSolidExample = () => {
+ return (
+ <>
+
+ A simple solid primary alert—check it out!
+
+
+ A simple solid secondary alert—check it out!
+
+
+ A simple solid success alert—check it out!
+
+
+ A simple solid danger alert—check it out!
+
+
+ A simple solid warning alert—check it out!
+
+
+ A simple solid info alert—check it out!
+
+
+ A simple solid light alert—check it out!
+
+
+ A simple solid dark alert—check it out!
+
+ >
+ )
+}
diff --git a/packages/docs/content/components/alert/index.mdx b/packages/docs/content/components/alert/index.mdx
new file mode 100644
index 00000000..d6e4064a
--- /dev/null
+++ b/packages/docs/content/components/alert/index.mdx
@@ -0,0 +1,70 @@
+---
+title: React Alert Component
+name: Alert
+description: React alert component gives contextual feedback information for common user operations. The alert component is delivered with a bunch of usable and adjustable alert messages.
+menu: Components
+route: /components/alert/
+other_frameworks: alert
+---
+
+## How to use React Alert Component.
+
+React Alert is prepared for any length of text, as well as an optional close button. For a styling, use one of the **required** contextual `color` props (e.g., `primary`). For inline dismissal, use the [dismissing prop](#dismissing).
+
+
+
+
+
+### Live example
+
+Click the button below to show an alert (hidden with inline styles to start), then dismiss (and destroy) it with the built-in close button.
+
+
+
+### Link color
+
+Use the `` component to immediately give matching colored links inside any react alert component.
+
+
+
+### Additional content
+
+React Alert can also incorporate supplementary components & elements like heading, paragraph, and divider.
+
+
+
+### Icons
+
+Similarly, you can use [flexbox utilities](https//coreui.io/docs/4.0/utilities/flex") and [CoreUI Icons](https://coreui.io/icons/) to create react alerts with icons. Depending on your icons and content, you may want to add more utilities or custom styles.
+
+
+
+Need more than one icon for your react alerts? Consider using [CoreUI Icons](https://coreui.io/icons/).
+
+
+
+### Solid
+
+Use `variant="solid"` to change contextual colors to solid.
+
+
+
+### Dismissing
+
+React Alert component can also be easily dismissed. Just add the `dismissible` prop.
+
+
+
+
+ When an alert is dismissed, the element is completely removed from the page structure. If a
+ keyboard user dismisses the alert using the close button, their focus will suddenly be lost and,
+ depending on the browser, reset to the start of the page/document.
+
+
+## API
+
+Check out the documentation below for a comprehensive guide to all the props you can use with the components mentioned here.
+
+- [<CAlert />](./api/#calert)
+- [<CAlertHeading />](./api/#calertheading)
+- [<CAlertLink />](./api/#calertlink)
diff --git a/packages/docs/content/components/alert/styling.mdx b/packages/docs/content/components/alert/styling.mdx
new file mode 100644
index 00000000..07d572f3
--- /dev/null
+++ b/packages/docs/content/components/alert/styling.mdx
@@ -0,0 +1,27 @@
+---
+title: React Alert Component Styling
+name: Alert Styling
+description: Learn how to customize the React Alert component with CSS classes, variables, and SASS for flexible styling and seamless integration into your design.
+route: /components/alert/
+---
+
+### CSS variables
+
+React Alert supports CSS variables for easy customization. These variables are set via SASS but allow direct overrides in your stylesheets or inline styles.
+
+
+
+#### How to use CSS variables
+
+```jsx
+const customVars = {
+ '--cui-alert-color': '#333',
+ '--cui-alert-bg': '#f8f9fa',
+}
+
+return {/* Alert content */}
+```
+
+### SASS variables
+
+
diff --git a/packages/docs/content/components/avatar.mdx b/packages/docs/content/components/avatar.mdx
deleted file mode 100644
index ebc7bae1..00000000
--- a/packages/docs/content/components/avatar.mdx
+++ /dev/null
@@ -1,125 +0,0 @@
----
-title: React Avatar Component
-name: Avatar
-description: The React Avatar component is used to display circular user profile pictures. React avatars can portray people or objects and support images, icons, or letters.
-menu: Components
-route: /components/avatar
-other_frameworks: avatar
----
-
-import { CAvatar } from '@coreui/react/src/index'
-
-import Avatar1 from './../assets/images/avatars/1.jpg'
-import Avatar2 from './../assets/images/avatars/2.jpg'
-import Avatar3 from './../assets/images/avatars/3.jpg'
-
-## Image avatars
-
-Showcase React avatars using images. These avatars are typically circular and can display user profile pictures.
-
-```jsx preview
-
-
-
-```
-
-## Letter avatars
-
-Use letters inside avatars to represent users or objects when images are not available. This can be useful for displaying initials.
-
-```jsx preview
-CUI
-CUI
-CUI
-```
-
-## Icons avatars
-
-Incorporate icons within React avatars, allowing for a visual representation using scalable vector graphics (SVG).
-
-```jsx preview
-
-
-
-
-
-
-
-
-
-```
-
-## Rounded avatars
-
-Use the `shape="rounded"` prop to make react avatars squared with rounded corners.
-
-```jsx preview
-CUI
-CUI
-CUI
-```
-
-## Square avatars
-
-Use the `shape="rounded-0"` prop to make react avatars squared.
-
-```jsx preview
-CUI
-CUI
-CUI
-```
-
-## Sizes
-
-Fancy larger or smaller react avatar component? Add `size="xl"`, `size="lg"`, `size="md"` or `size="sm"` for additional sizes.
-
-```jsx preview
-CUI
-CUI
-CUI
-CUI
-CUI
-```
-
-## Avatars with status
-
-Add a status indicator to avatars using the `status` property to show online or offline status.
-
-```jsx preview
-
-CUI
-```
-
-## Customizing
-
-### CSS variables
-
-React avatars use local CSS variables on `.avatar` for enhanced real-time customization. Values for the CSS variables are set via Sass, so Sass customization is still supported, too.
-
-
-
-#### How to use CSS variables
-
-```jsx
-const vars = {
- '--my-css-var': 10,
- '--my-another-css-var': 'red',
-}
-return ...
-```
-
-### SASS variables
-
-
-
-## API
-
-### CAvatar
-
-`markdown:CAvatar.api.mdx`
diff --git a/packages/docs/content/components/avatar/api.mdx b/packages/docs/content/components/avatar/api.mdx
new file mode 100644
index 00000000..43f01720
--- /dev/null
+++ b/packages/docs/content/components/avatar/api.mdx
@@ -0,0 +1,12 @@
+---
+title: React Avatar Component API
+name: Avatar API
+description: Explore the API reference for the React Avatar component and discover how to effectively utilize its props for customization.
+route: /components/avatar/
+---
+
+import CAvatarAPI from '../../api/CAvatar.api.mdx'
+
+## CAvatar
+
+
diff --git a/packages/docs/content/components/avatar/bootstrap.mdx b/packages/docs/content/components/avatar/bootstrap.mdx
new file mode 100644
index 00000000..4dfa9db8
--- /dev/null
+++ b/packages/docs/content/components/avatar/bootstrap.mdx
@@ -0,0 +1,55 @@
+---
+title: React Bootstrap Avatar Component
+name: Avatar with Bootstrap Styling
+description: Learn how to use CoreUI’s React Avatar component styled with Bootstrap to display profile images, icons, initials, and status indicators in a consistent and responsive design.
+route: /components/avatar/
+bootstrap_component: true
+---
+
+## Image avatars
+
+Use Bootstrap-styled React avatars to display user profile images in a circular format — ideal for representing user accounts and contacts.
+
+
+
+## Letter avatars
+
+Display user initials using letter-based avatars. A perfect fallback when images aren’t available, and still visually consistent with Bootstrap styling.
+
+
+
+## Icon avatars
+
+Insert icons into avatars for representing roles, objects, or placeholder users. Supports vector icons with Bootstrap-friendly layout.
+
+
+
+## Rounded avatars
+
+Use the `shape="rounded"` prop to apply Bootstrap’s rounded corners to the avatar, giving it a subtle square-rounded appearance.
+
+
+
+## Square avatars
+
+To make avatars fully square with no border radius, apply `shape="rounded-0"`, matching Bootstrap’s `rounded-0` utility style.
+
+
+
+## Sizes
+
+Customize avatar size using the `size` prop. Available options include `xl`, `lg`, `md`, and `sm`, aligning with Bootstrap’s scalable design system.
+
+
+
+## Avatars with status
+
+Add a small status indicator (e.g. online, offline) to avatars using the `status` prop — useful for chat interfaces or user dashboards.
+
+
+
+## API reference
+
+Refer to the API below for all configurable props used with the Bootstrap-styled React Avatar component.
+
+- [<CAvatar />](../api/#cavatar)
diff --git a/packages/docs/content/components/avatar/examples/AvatarIcon.tsx b/packages/docs/content/components/avatar/examples/AvatarIcon.tsx
new file mode 100644
index 00000000..80a56932
--- /dev/null
+++ b/packages/docs/content/components/avatar/examples/AvatarIcon.tsx
@@ -0,0 +1,27 @@
+import React from 'react'
+import { CAvatar } from '@coreui/react'
+
+export const AvatarIcon = () => {
+ return (
+ <>
+
+
+
+
+
+
+
+
+
+ >
+ )
+}
diff --git a/packages/docs/content/components/avatar/examples/AvatarImage.tsx b/packages/docs/content/components/avatar/examples/AvatarImage.tsx
new file mode 100644
index 00000000..266a306e
--- /dev/null
+++ b/packages/docs/content/components/avatar/examples/AvatarImage.tsx
@@ -0,0 +1,13 @@
+import React from 'react'
+import { withPrefix } from 'gatsby'
+import { CAvatar } from '@coreui/react'
+
+export const AvatarImage = () => {
+ return (
+ <>
+
+
+
+ >
+ )
+}
diff --git a/packages/docs/content/components/avatar/examples/AvatarLetter.tsx b/packages/docs/content/components/avatar/examples/AvatarLetter.tsx
new file mode 100644
index 00000000..a67c7406
--- /dev/null
+++ b/packages/docs/content/components/avatar/examples/AvatarLetter.tsx
@@ -0,0 +1,16 @@
+import React from 'react'
+import { CAvatar } from '@coreui/react'
+
+export const AvatarLetter = () => {
+ return (
+ <>
+
+ CUI
+
+ CUI
+
+ CUI
+
+ >
+ )
+}
diff --git a/packages/docs/content/components/avatar/examples/AvatarRounded.tsx b/packages/docs/content/components/avatar/examples/AvatarRounded.tsx
new file mode 100644
index 00000000..b2d69418
--- /dev/null
+++ b/packages/docs/content/components/avatar/examples/AvatarRounded.tsx
@@ -0,0 +1,18 @@
+import React from 'react'
+import { CAvatar } from '@coreui/react'
+
+export const AvatarRounded = () => {
+ return (
+ <>
+
+ CUI
+
+
+ CUI
+
+
+ CUI
+
+ >
+ )
+}
diff --git a/packages/docs/content/components/avatar/examples/AvatarSizes.tsx b/packages/docs/content/components/avatar/examples/AvatarSizes.tsx
new file mode 100644
index 00000000..7cf52140
--- /dev/null
+++ b/packages/docs/content/components/avatar/examples/AvatarSizes.tsx
@@ -0,0 +1,22 @@
+import React from 'react'
+import { CAvatar } from '@coreui/react'
+
+export const AvatarSizes = () => {
+ return (
+ <>
+
+ CUI
+
+
+ CUI
+
+
+ CUI
+
+ CUI
+
+ CUI
+
+ >
+ )
+}
diff --git a/packages/docs/content/components/avatar/examples/AvatarSquare.tsx b/packages/docs/content/components/avatar/examples/AvatarSquare.tsx
new file mode 100644
index 00000000..1a35ac8f
--- /dev/null
+++ b/packages/docs/content/components/avatar/examples/AvatarSquare.tsx
@@ -0,0 +1,18 @@
+import React from 'react'
+import { CAvatar } from '@coreui/react'
+
+export const AvatarSquare = () => {
+ return (
+ <>
+
+ CUI
+
+
+ CUI
+
+
+ CUI
+
+ >
+ )
+}
diff --git a/packages/docs/content/components/avatar/examples/AvatarWithStatus.tsx b/packages/docs/content/components/avatar/examples/AvatarWithStatus.tsx
new file mode 100644
index 00000000..ce8141fa
--- /dev/null
+++ b/packages/docs/content/components/avatar/examples/AvatarWithStatus.tsx
@@ -0,0 +1,14 @@
+import React from 'react'
+import { withPrefix } from 'gatsby'
+import { CAvatar } from '@coreui/react'
+
+export const AvatarWithStatus = () => {
+ return (
+ <>
+
+
+ CUI
+
+ >
+ )
+}
diff --git a/packages/docs/content/components/avatar/index.mdx b/packages/docs/content/components/avatar/index.mdx
new file mode 100644
index 00000000..2789b003
--- /dev/null
+++ b/packages/docs/content/components/avatar/index.mdx
@@ -0,0 +1,56 @@
+---
+title: React Avatar Component
+name: Avatar
+description: The React Avatar component is used to display circular user profile pictures. React avatars can portray people or objects and support images, icons, or letters.
+route: /components/avatar/
+other_frameworks: avatar
+---
+
+## Image avatars
+
+Showcase React avatars using images. These avatars are typically circular and can display user profile pictures.
+
+
+
+## Letter avatars
+
+Use letters inside avatars to represent users or objects when images are not available. This can be useful for displaying initials.
+
+
+
+## Icons avatars
+
+Incorporate icons within React avatars, allowing for a visual representation using scalable vector graphics (SVG).
+
+
+
+## Rounded avatars
+
+Use the `shape="rounded"` prop to make react avatars squared with rounded corners.
+
+
+
+## Square avatars
+
+Use the `shape="rounded-0"` prop to make react avatars squared.
+
+
+
+## Sizes
+
+Fancy larger or smaller react avatar component? Add `size="xl"`, `size="lg"`, `size="md"` or `size="sm"` for additional sizes.
+
+
+
+## Avatars with status
+
+Add a status indicator to avatars using the `status` property to show online or offline status.
+
+
+
+## API
+
+Check out the documentation below for a comprehensive guide to all the props you can use with the components mentioned here.
+
+- [<CAvatar />](./api/#cavatar)
+
diff --git a/packages/docs/content/components/avatar/styling.mdx b/packages/docs/content/components/avatar/styling.mdx
new file mode 100644
index 00000000..eaefe78d
--- /dev/null
+++ b/packages/docs/content/components/avatar/styling.mdx
@@ -0,0 +1,27 @@
+---
+title: React Avatar Component Styling
+name: Avatar Styling
+description: Learn how to customize the React Avatar component with CSS classes, variables, and SASS for flexible styling and seamless integration into your design.
+route: /components/avatar/
+---
+
+### CSS variables
+
+React Avatar supports CSS variables for easy customization. These variables are set via SASS but allow direct overrides in your stylesheets or inline styles.
+
+
+
+#### How to use CSS variables
+
+```jsx
+const customVars = {
+ '--cui-avatar-font-size': '1rem',
+ '--cui-avatar-status-width': '0.125rem',
+}
+
+return
+```
+
+### SASS variables
+
+
diff --git a/packages/docs/content/components/badge.mdx b/packages/docs/content/components/badge.mdx
deleted file mode 100644
index 10501457..00000000
--- a/packages/docs/content/components/badge.mdx
+++ /dev/null
@@ -1,158 +0,0 @@
----
-title: React Badge Component
-name: Badge
-description: React badge component is small count and labeling component.
-menu: Components
-route: /components/badge
-other_frameworks: badge
----
-
-import { CBadge, CButton } from '@coreui/react/src/index'
-
-## How to use React Badge Component.
-
-React badge component scales to suit the size of the parent element by using relative font sizing and `em` units.
-
-```jsx preview
-
Example heading New
-
Example heading New
-
Example heading New
-
Example heading New
-
Example heading New
-
Example heading New
-```
-
-React badges can be used as part of links or buttons to provide a counter.
-
-```jsx preview
-
- Notifications 4
-
-```
-
-Remark that depending on how you use them, react badges may be complicated for users of screen readers and related assistive technologies.
-
-Unless the context is clear, consider including additional context with a visually hidden piece of additional text.
-
-```jsx preview
-
- Profile 9
- unread messages
-
-```
-
-### Positioned
-
-Use `position` prop to modify a component and position it in the corner of a link or button.
-
-```jsx preview
-
- Profile
-
- 99+ unread messages
-
-
-
- Profile
-
- 99+ unread messages
-
-
-
-
- Profile
-
- 99+ unread messages
-
-
-
- Profile
-
- 99+ unread messages
-
-
-```
-
-You can also create more generic indicators without a counter using a few more utilities.
-
-```jsx preview
-
- Profile
-
- New alerts
-
-
-```
-
-## Contextual variations
-
-Add any of the below-mentioned `color` props to modify the presentation of a react badge.
-
-```jsx preview
-primary
-success
-danger
-warning
-info
-light
-dark
-```
-
-You can also apply contextual variations with the `textBgColor` property, which automatically sets the text color to ensure compliance with the WCAG 4.5:1 contrast ratio standard for enhanced accessibility.
-
-```jsx preview
-primary
-success
-danger
-warning
-info
-light
-dark
-```
-
-## Pill badges
-
-Apply the `shape="rounded-pill"` prop to make badges rounded.
-
-```jsx preview
-primary
-success
-danger
-warning
-info
-light
-dark
-```
-
-## Customizing
-
-### CSS variables
-
-React badges use local CSS variables on `.badges` for enhanced real-time customization. Values for the CSS variables are set via Sass, so Sass customization is still supported, too.
-
-
-
-#### How to use CSS variables
-
-```jsx
-const vars = {
- '--my-css-var': 10,
- '--my-another-css-var': 'red',
-}
-return ...
-```
-
-### SASS variables
-
-
-
-## API
-
-### CBadge
-
-`markdown:CBadge.api.mdx`
diff --git a/packages/docs/content/components/badge/api.mdx b/packages/docs/content/components/badge/api.mdx
new file mode 100644
index 00000000..0cf7ef43
--- /dev/null
+++ b/packages/docs/content/components/badge/api.mdx
@@ -0,0 +1,12 @@
+---
+title: React Badge Component API
+name: Badge API
+description: Explore the API reference for the React Badge component and discover how to effectively utilize its props for customization.
+route: /components/badge/
+---
+
+import CBadgeAPI from '../../api/CBadge.api.mdx'
+
+## CBadge
+
+
diff --git a/packages/docs/content/components/badge/bootstrap.mdx b/packages/docs/content/components/badge/bootstrap.mdx
new file mode 100644
index 00000000..26481218
--- /dev/null
+++ b/packages/docs/content/components/badge/bootstrap.mdx
@@ -0,0 +1,53 @@
+---
+title: React Bootstrap Badge Component
+name: Badge with Bootstrap Styling
+description: Learn how to use CoreUI’s React Badge component with Bootstrap styles to display counters, labels, and indicators within buttons, links, and UI elements.
+route: /components/badge/
+bootstrap_component: true
+---
+
+## How to use React Bootstrap Badge component
+
+React Bootstrap Badges scale based on their parent using `em` units, making them easy to embed inside headings, buttons, or navigation items.
+
+
+
+You can also use badges inside buttons and links to display counters or notifications.
+
+
+
+Keep in mind that depending on usage, badges might be challenging for screen reader users. Add visually hidden helper text when needed to improve accessibility.
+
+
+
+### Positioned badges
+
+Use the `position` prop to place the badge in the corner of a button or link, mimicking the Bootstrap positioning helpers.
+
+
+
+You can also create generic status indicators without a number by combining badges with utility classes.
+
+
+
+## Contextual variations
+
+Apply `color` props like `primary`, `danger`, or `success` to control the background color of the badge in a Bootstrap-consistent way.
+
+
+
+Use `textBgColor` to automatically set contrasting text and background colors according to WCAG accessibility standards.
+
+
+
+## Pill badges
+
+To make badges more rounded, use the `shape="rounded-pill"` prop. This mirrors Bootstrap’s pill-style badge appearance.
+
+
+
+## API reference
+
+See below for the full API reference for all available props for the Bootstrap-styled React Badge component.
+
+- [<CBadge />](../api/#cbadge)
diff --git a/packages/docs/content/components/badge/examples/Badge2Example.tsx b/packages/docs/content/components/badge/examples/Badge2Example.tsx
new file mode 100644
index 00000000..c5af3862
--- /dev/null
+++ b/packages/docs/content/components/badge/examples/Badge2Example.tsx
@@ -0,0 +1,10 @@
+import React from 'react'
+import { CBadge, CButton } from '@coreui/react'
+
+export const Badge2Example = () => {
+ return (
+
+ Notifications 4
+
+ )
+}
diff --git a/packages/docs/content/components/badge/examples/Badge3Example.tsx b/packages/docs/content/components/badge/examples/Badge3Example.tsx
new file mode 100644
index 00000000..ee8f2ef9
--- /dev/null
+++ b/packages/docs/content/components/badge/examples/Badge3Example.tsx
@@ -0,0 +1,11 @@
+import React from 'react'
+import { CBadge, CButton } from '@coreui/react'
+
+export const Badge3Example = () => {
+ return (
+
+ Profile 9
+ unread messages
+
+ )
+}
diff --git a/packages/docs/content/components/badge/examples/BadgeContextual2Variations.tsx b/packages/docs/content/components/badge/examples/BadgeContextual2Variations.tsx
new file mode 100644
index 00000000..363ec2aa
--- /dev/null
+++ b/packages/docs/content/components/badge/examples/BadgeContextual2Variations.tsx
@@ -0,0 +1,16 @@
+import React from 'react'
+import { CBadge } from '@coreui/react'
+
+export const BadgeContextual2Variations = () => {
+ return (
+ <>
+ primary
+ success
+ danger
+ warning
+ info
+ light
+ dark
+ >
+ )
+}
diff --git a/packages/docs/content/components/badge/examples/BadgeContextualVariations.tsx b/packages/docs/content/components/badge/examples/BadgeContextualVariations.tsx
new file mode 100644
index 00000000..7f601c5f
--- /dev/null
+++ b/packages/docs/content/components/badge/examples/BadgeContextualVariations.tsx
@@ -0,0 +1,16 @@
+import React from 'react'
+import { CBadge } from '@coreui/react'
+
+export const BadgeContextualVariations = () => {
+ return (
+ <>
+ primary
+ success
+ danger
+ warning
+ info
+ light
+ dark
+ >
+ )
+}
diff --git a/packages/docs/content/components/badge/examples/BadgeExample.tsx b/packages/docs/content/components/badge/examples/BadgeExample.tsx
new file mode 100644
index 00000000..83812e06
--- /dev/null
+++ b/packages/docs/content/components/badge/examples/BadgeExample.tsx
@@ -0,0 +1,15 @@
+import React from 'react'
+import { CBadge } from '@coreui/react'
+
+export const BadgeExample = () => {
+ return (
+ <>
+
Example heading New
+
Example heading New
+
Example heading New
+
Example heading New
+
Example heading New
+
Example heading New
+ >
+ )
+}
diff --git a/packages/docs/content/components/badge/examples/BadgePillExample.tsx b/packages/docs/content/components/badge/examples/BadgePillExample.tsx
new file mode 100644
index 00000000..fad582a6
--- /dev/null
+++ b/packages/docs/content/components/badge/examples/BadgePillExample.tsx
@@ -0,0 +1,16 @@
+import React from 'react'
+import { CBadge } from '@coreui/react'
+
+export const BadgePillExample = () => {
+ return (
+ <>
+ primary
+ success
+ danger
+ warning
+ info
+ light
+ dark
+ >
+ )
+}
diff --git a/packages/docs/content/components/badge/examples/BadgePositioned2Example.tsx b/packages/docs/content/components/badge/examples/BadgePositioned2Example.tsx
new file mode 100644
index 00000000..53a01aef
--- /dev/null
+++ b/packages/docs/content/components/badge/examples/BadgePositioned2Example.tsx
@@ -0,0 +1,18 @@
+import React from 'react'
+import { CBadge, CButton } from '@coreui/react'
+
+export const BadgePositioned2Example = () => {
+ return (
+
+ Profile
+
+ New alerts
+
+
+ )
+}
diff --git a/packages/docs/content/components/badge/examples/BadgePositionedExample.tsx b/packages/docs/content/components/badge/examples/BadgePositionedExample.tsx
new file mode 100644
index 00000000..b12cf61a
--- /dev/null
+++ b/packages/docs/content/components/badge/examples/BadgePositionedExample.tsx
@@ -0,0 +1,34 @@
+import React from 'react'
+import { CBadge, CButton } from '@coreui/react'
+
+export const BadgePositionedExample = () => {
+ return (
+ <>
+
+ Profile
+
+ 99+ unread messages
+
+
+
+ Profile
+
+ 99+ unread messages
+
+
+
+
+ Profile
+
+ 99+ unread messages
+
+
+
+ Profile
+
+ 99+ unread messages
+
+
+ >
+ )
+}
diff --git a/packages/docs/content/components/badge/index.mdx b/packages/docs/content/components/badge/index.mdx
new file mode 100644
index 00000000..a0cda7bd
--- /dev/null
+++ b/packages/docs/content/components/badge/index.mdx
@@ -0,0 +1,55 @@
+---
+title: React Badge Component
+name: Badge
+description: React badge component is small count and labeling component.
+route: /components/badge/
+other_frameworks: badge
+---
+
+## How to use React Badge Component.
+
+React badge component scales to suit the size of the parent element by using relative font sizing and `em` units.
+
+
+
+React badges can be used as part of links or buttons to provide a counter.
+
+
+
+Remark that depending on how you use them, react badges may be complicated for users of screen readers and related assistive technologies.
+
+Unless the context is clear, consider including additional context with a visually hidden piece of additional text.
+
+
+
+### Positioned
+
+Use `position` prop to modify a component and position it in the corner of a link or button.
+
+
+
+You can also create more generic indicators without a counter using a few more utilities.
+
+
+
+## Contextual variations
+
+Add any of the below-mentioned `color` props to modify the presentation of a react badge.
+
+
+
+You can also apply contextual variations with the `textBgColor` property, which automatically sets the text color to ensure compliance with the WCAG 4.5:1 contrast ratio standard for enhanced accessibility.
+
+
+
+## Pill badges
+
+Apply the `shape="rounded-pill"` prop to make badges rounded.
+
+
+
+## API
+
+Check out the documentation below for a comprehensive guide to all the props you can use with the components mentioned here.
+
+- [<CBadge />](./api/#cbadge)
diff --git a/packages/docs/content/components/badge/styling.mdx b/packages/docs/content/components/badge/styling.mdx
new file mode 100644
index 00000000..4dcbb45c
--- /dev/null
+++ b/packages/docs/content/components/badge/styling.mdx
@@ -0,0 +1,27 @@
+---
+title: React Badge Component Styling
+name: Badge Styling
+description: Learn how to customize the React Badge component with CSS classes, variables, and SASS for flexible styling and seamless integration into your design.
+route: /components/badge/
+---
+
+### CSS variables
+
+React Badge supports CSS variables for easy customization. These variables are set via SASS but allow direct overrides in your stylesheets or inline styles.
+
+
+
+#### How to use CSS variables
+
+```jsx
+const customVars = {
+ '--cui-avatar-font-size': '2rem',
+ '--cui-avatar-color': '#f2f3f4',
+}
+
+return
+```
+
+### SASS variables
+
+
diff --git a/packages/docs/content/components/breadcrumb.mdx b/packages/docs/content/components/breadcrumb.mdx
deleted file mode 100644
index 96c0d6df..00000000
--- a/packages/docs/content/components/breadcrumb.mdx
+++ /dev/null
@@ -1,113 +0,0 @@
----
-title: React Breadcrumb Component
-name: Breadcrumb
-description: React breadcrumb navigation component which indicates the current location within a navigational hierarchy that automatically adds separators.
-menu: Components
-route: /components/breadcrumb
-other_frameworks: breadcrumb
----
-
-import { CBreadcrumb, CBreadcrumbItem } from '@coreui/react/src/index'
-
-## How to use React Breadcrumb Component.
-
-The react breadcrumb navigation provides links back to each previous page the user navigated through and shows the current location in a website or an application. You don’t have to add separators, because they automatically added in CSS through ::before and content.
-
-```jsx preview
-
- Home
-
-
-
- Home
- Library
-
-
-
- Home
- Library
- Data
-
-```
-
-## Dividers
-
-Dividers are automatically added in CSS through [`::before`](https://developer.mozilla.org/en-US/docs/Web/CSS/::before) and [`content`](https://developer.mozilla.org/en-US/docs/Web/CSS/content). They can be changed by modifying a local CSS custom property `--coreui-breadcrumb-divider`, or through the `$breadcrumb-divider` Sass variable — and `$breadcrumb-divider-flipped` for its RTL counterpart, if needed. We default to our Sass variable, which is set as a fallback to the custom property. This way, you get a global divider that you can override without recompiling CSS at any time.
-
-```jsx preview
-'"}}>
- Home
- Library
-
-```
-
-When modifying via Sass, the [quote](https://sass-lang.com/documentation/modules/string#quote) function is required to generate the quotes around a string. For example, using `>` as the divider, you can use this:
-
-```scss
-$breadcrumb-divider: quote(">");
-```
-
-It's also possible to use an **embedded SVG icon**. Apply it via our CSS custom property, or use the Sass variable.
-
-```jsx preview
-
- Home
- Library
-
-```
-
-```scss
-$breadcrumb-divider: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'
-width='8' height='8'%3E%3Cpath d='M2.5 0L1 1.5 3.5 4 1 6.5 2.5 8l4-4-4-4z' fill='currentColor'/%3E%3C/svg%3E");
-```
-
-You can also remove the divider setting `--cui-breadcrumb-divider: '';` (empty strings in CSS custom properties counts as a value), or setting the Sass variable to `$breadcrumb-divider: none;`.
-
-```jsx preview
-
- Home
- Library
-
-```
-
-```scss
-$breadcrumb-divider: none;
-```
-
-## Accessibility
-
-Since react breadcrumbs provide navigation, it's useful to add a significant label such as `aria-label="breadcrumb"` to explain the type of navigation implemented in the `