diff --git a/src/constants/Categories.ts b/src/constants/Categories.ts
index 357ba9b..2ceaea5 100644
--- a/src/constants/Categories.ts
+++ b/src/constants/Categories.ts
@@ -90,6 +90,7 @@ export const CATEGORIES = [
'Threads',
'Grid Motion',
'Orb',
+ 'Ballpit'
]
}
];
diff --git a/src/constants/Components.ts b/src/constants/Components.ts
index 00222ef..a6dba2d 100644
--- a/src/constants/Components.ts
+++ b/src/constants/Components.ts
@@ -75,7 +75,8 @@ const backgrounds = {
'hyperspeed': () => import('../demo/Backgrounds/HyperspeedDemo.vue'),
'shape-blur': () => import('../demo/Backgrounds/ShapeBlurDemo.vue'),
'balatro': () => import('../demo/Backgrounds/BalatroDemo.vue'),
- 'orb': () => import('../demo/Backgrounds/OrbDemo.vue')
+ 'orb': () => import('../demo/Backgrounds/OrbDemo.vue'),
+ 'ballpit': () => import('../demo/Backgrounds/BallpitDemo.vue'),
};
export const componentMap = {
diff --git a/src/constants/code/Backgrounds/ballpitCode.ts b/src/constants/code/Backgrounds/ballpitCode.ts
new file mode 100644
index 0000000..5c98155
--- /dev/null
+++ b/src/constants/code/Backgrounds/ballpitCode.ts
@@ -0,0 +1,23 @@
+import code from '@content/Backgrounds/Ballpit/Ballpit.vue?raw';
+import type { CodeObject } from '../../../types/code';
+
+export const ballpit: CodeObject = {
+ cli: `npx jsrepo add https://vue-bits.dev/ui/Backgrounds/Ballpit`,
+ installation: `npm i three`,
+ usage: `
+
+
+
+
+
+`,
+ code
+};
diff --git a/src/content/Backgrounds/Ballpit/Ballpit.vue b/src/content/Backgrounds/Ballpit/Ballpit.vue
new file mode 100644
index 0000000..cd03aa5
--- /dev/null
+++ b/src/content/Backgrounds/Ballpit/Ballpit.vue
@@ -0,0 +1,909 @@
+
+
+
+
+
diff --git a/src/demo/Backgrounds/BallpitDemo.vue b/src/demo/Backgrounds/BallpitDemo.vue
new file mode 100644
index 0000000..ed8ec1f
--- /dev/null
+++ b/src/demo/Backgrounds/BallpitDemo.vue
@@ -0,0 +1,220 @@
+
+
+
+
+
+
+
+
+ {
+ count = val;
+ }
+ "
+ />
+
+ {
+ gravity = val;
+ }
+ "
+ />
+
+ {
+ friction = val;
+ }
+ "
+ />
+
+ {
+ wallBounce = val;
+ }
+ "
+ />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+