diff --git a/src/constants/Categories.ts b/src/constants/Categories.ts
index 1fe5c08..681548f 100644
--- a/src/constants/Categories.ts
+++ b/src/constants/Categories.ts
@@ -72,6 +72,7 @@ export const CATEGORIES = [
'Lightning',
'Letter Glitch',
'Particles',
+ 'Shape Blur',
'Waves',
'Squares',
'Iridescence',
diff --git a/src/constants/Components.ts b/src/constants/Components.ts
index ab2deab..6ba057f 100644
--- a/src/constants/Components.ts
+++ b/src/constants/Components.ts
@@ -62,7 +62,8 @@ const backgrounds = {
'aurora': () => import('../demo/Backgrounds/AuroraDemo.vue'),
'beams': () => import('../demo/Backgrounds/BeamsDemo.vue'),
'grid-motion': () => import('../demo/Backgrounds/GridMotionDemo.vue'),
- 'hyperspeed': () => import('../demo/Backgrounds/HyperspeedDemo.vue')
+ 'hyperspeed': () => import('../demo/Backgrounds/HyperspeedDemo.vue'),
+ 'shape-blur': () => import('../demo/Backgrounds/ShapeBlurDemo.vue')
};
export const componentMap = {
diff --git a/src/constants/code/Backgrounds/shapeBlurCode.ts b/src/constants/code/Backgrounds/shapeBlurCode.ts
new file mode 100644
index 0000000..7b98771
--- /dev/null
+++ b/src/constants/code/Backgrounds/shapeBlurCode.ts
@@ -0,0 +1,24 @@
+import code from '@content/Backgrounds/ShapeBlur/ShapeBlur.vue?raw';
+import type { CodeObject } from '../../../types/code';
+
+export const shapeBlur: CodeObject = {
+ cli: `npx jsrepo add https://vue-bits.dev/ui/Backgrounds/ShapeBlur`,
+ installation: `npm install three`,
+ usage: `
+
+
+
+`,
+ code
+};
diff --git a/src/content/Backgrounds/ShapeBlur/ShapeBlur.vue b/src/content/Backgrounds/ShapeBlur/ShapeBlur.vue
new file mode 100644
index 0000000..e53cfcc
--- /dev/null
+++ b/src/content/Backgrounds/ShapeBlur/ShapeBlur.vue
@@ -0,0 +1,334 @@
+
+
+
+
+
+
+
diff --git a/src/demo/Backgrounds/ShapeBlurDemo.vue b/src/demo/Backgrounds/ShapeBlurDemo.vue
new file mode 100644
index 0000000..0de919d
--- /dev/null
+++ b/src/demo/Backgrounds/ShapeBlurDemo.vue
@@ -0,0 +1,129 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+