diff --git a/packages/react/components/KeyVal/index.mjs b/packages/react/components/KeyVal/index.mjs
index 39c5a0bb51c..eb183334ea2 100644
--- a/packages/react/components/KeyVal/index.mjs
+++ b/packages/react/components/KeyVal/index.mjs
@@ -2,6 +2,19 @@ import React, { useState, useContext } from 'react'
import { copyToClipboard } from '@freesewing/utils'
import { LoadingStatusContext } from '@freesewing/react/context/LoadingStatus'
+/**
+ * A component to display key/value pairs
+ *
+ * @component
+ * @param {object} props - All component props
+ * @param {boolean} [props.small = false] - Set this to render a small version
+ * @param {string} [props.color = primary] - The DaisyUI color to apply
+ * @param {boolean} [props.href = false] - Set this to make this a link
+ * @param {string} props.k - The key to display (key is a reserved react prop, so we use k)
+ * @param {boolean} [props.onClick = false] - Set this to make this a button
+ * @param {string} props.val - The value to display
+ * @returns {JSX.Element}
+ */
export const KeyVal = ({
k,
val,
@@ -25,6 +38,7 @@ export const KeyVal = ({
if (color === 'secondary') colorClasses2 = secondaryClasses2
else if (color === 'neutral') colorClasses2 = neutralClasses2
else if (color === 'accent') colorClasses2 = accentClasses2
+ else if (color === 'info') colorClasses2 = infoClasses2
else if (color === 'warning') colorClasses2 = warningClasses2
else if (color === 'success') colorClasses2 = successClasses2
else if (color === 'error') colorClasses2 = errorClasses2
diff --git a/packages/react/mkdocs.sh b/packages/react/mkdocs.sh
index 4a2c43c969e..0ce2104fef3 100755
--- a/packages/react/mkdocs.sh
+++ b/packages/react/mkdocs.sh
@@ -16,3 +16,4 @@ jsdoc -c jsdoc.json components/Highlight/* > ../../sites/dev/prebuild/jsdoc/reac
jsdoc -c jsdoc.json components/Icon/* > ../../sites/dev/prebuild/jsdoc/react/components/icon.json
jsdoc -c jsdoc.json components/Input/* > ../../sites/dev/prebuild/jsdoc/react/components/input.json
jsdoc -c jsdoc.json components/Json/* > ../../sites/dev/prebuild/jsdoc/react/components/json.json
+jsdoc -c jsdoc.json components/KeyVal/* > ../../sites/dev/prebuild/jsdoc/react/components/keyval.json
diff --git a/sites/dev/docs/reference/packages/react/components/keyval/_examples.js b/sites/dev/docs/reference/packages/react/components/keyval/_examples.js
new file mode 100644
index 00000000000..6fc867127c5
--- /dev/null
+++ b/sites/dev/docs/reference/packages/react/components/keyval/_examples.js
@@ -0,0 +1,21 @@
+import React from 'react'
+import { KeyVal } from '@freesewing/react/components/KeyVal'
+
+const colors = ['primary', 'secondary', 'accent', 'neutral', 'success', 'warning', 'error', 'info']
+
+export const KeyValExample = () => (
+ <>
+ Default
+
+
+ Colors
+