diff --git a/packages/bbui/src/IconPicker/IconPicker.svelte b/packages/bbui/src/IconPicker/IconPicker.svelte
new file mode 100644
index 0000000000..995394adca
--- /dev/null
+++ b/packages/bbui/src/IconPicker/IconPicker.svelte
@@ -0,0 +1,176 @@
+
+
+
+
+ {#if open}
+
(open = false)}
+ transition:fly={{ y: -20, duration: 200 }}
+ class="spectrum-Popover spectrum-Popover--bottom spectrum-Picker-popover is-open"
+ class:spectrum-Popover--align-right={alignRight}
+ >
+ {#each iconList as icon}
+
+
{icon.label}
+
+ {#each icon.icons as icon}
+
{
+ value = icon
+ }}
+ >
+
+
+ {/each}
+
+
+ {/each}
+
+ {/if}
+
+
+
diff --git a/packages/bbui/src/index.js b/packages/bbui/src/index.js
index 2b16f32b84..97dc88030e 100644
--- a/packages/bbui/src/index.js
+++ b/packages/bbui/src/index.js
@@ -58,6 +58,7 @@ export { default as Pagination } from "./Pagination/Pagination.svelte"
export { default as Badge } from "./Badge/Badge.svelte"
export { default as StatusLight } from "./StatusLight/StatusLight.svelte"
export { default as ColorPicker } from "./ColorPicker/ColorPicker.svelte"
+export { default as IconPicker } from "./IconPicker/IconPicker.svelte"
export { default as InlineAlert } from "./InlineAlert/InlineAlert.svelte"
export { default as Banner } from "./Banner/Banner.svelte"
export { default as BannerDisplay } from "./Banner/BannerDisplay.svelte"