diff --git a/frontend/components/AIChatBar.vue b/frontend/components/AIChatBar.vue
new file mode 100644
index 0000000..90db51a
--- /dev/null
+++ b/frontend/components/AIChatBar.vue
@@ -0,0 +1,57 @@
+
+
+
+
+
+
+
+
+ 52% used
+
+
+
+
+ Send
+
+
+
+
+
+
+
diff --git a/frontend/components/ui/dropdown-menu/DropdownMenu.vue b/frontend/components/ui/dropdown-menu/DropdownMenu.vue
new file mode 100644
index 0000000..8b57e96
--- /dev/null
+++ b/frontend/components/ui/dropdown-menu/DropdownMenu.vue
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
diff --git a/frontend/components/ui/dropdown-menu/DropdownMenuContent.vue b/frontend/components/ui/dropdown-menu/DropdownMenuContent.vue
new file mode 100644
index 0000000..29d0edc
--- /dev/null
+++ b/frontend/components/ui/dropdown-menu/DropdownMenuContent.vue
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
diff --git a/frontend/components/ui/dropdown-menu/DropdownMenuItem.vue b/frontend/components/ui/dropdown-menu/DropdownMenuItem.vue
new file mode 100644
index 0000000..66170c1
--- /dev/null
+++ b/frontend/components/ui/dropdown-menu/DropdownMenuItem.vue
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
diff --git a/frontend/components/ui/dropdown-menu/DropdownMenuTrigger.vue b/frontend/components/ui/dropdown-menu/DropdownMenuTrigger.vue
new file mode 100644
index 0000000..9287004
--- /dev/null
+++ b/frontend/components/ui/dropdown-menu/DropdownMenuTrigger.vue
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
diff --git a/frontend/components/ui/dropdown-menu/index.ts b/frontend/components/ui/dropdown-menu/index.ts
new file mode 100644
index 0000000..affbfff
--- /dev/null
+++ b/frontend/components/ui/dropdown-menu/index.ts
@@ -0,0 +1,4 @@
+export { default as DropdownMenu } from './DropdownMenu.vue'
+export { default as DropdownMenuTrigger } from './DropdownMenuTrigger.vue'
+export { default as DropdownMenuContent } from './DropdownMenuContent.vue'
+export { default as DropdownMenuItem } from './DropdownMenuItem.vue'
diff --git a/frontend/components/ui/input-group/InputGroup.vue b/frontend/components/ui/input-group/InputGroup.vue
new file mode 100644
index 0000000..7c88f24
--- /dev/null
+++ b/frontend/components/ui/input-group/InputGroup.vue
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
diff --git a/frontend/components/ui/input-group/InputGroupAddon.vue b/frontend/components/ui/input-group/InputGroupAddon.vue
new file mode 100644
index 0000000..b8df2b0
--- /dev/null
+++ b/frontend/components/ui/input-group/InputGroupAddon.vue
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
diff --git a/frontend/components/ui/input-group/InputGroupButton.vue b/frontend/components/ui/input-group/InputGroupButton.vue
new file mode 100644
index 0000000..05e89b3
--- /dev/null
+++ b/frontend/components/ui/input-group/InputGroupButton.vue
@@ -0,0 +1,28 @@
+
+
+
+
+
diff --git a/frontend/components/ui/input-group/InputGroupText.vue b/frontend/components/ui/input-group/InputGroupText.vue
new file mode 100644
index 0000000..5ff7074
--- /dev/null
+++ b/frontend/components/ui/input-group/InputGroupText.vue
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
diff --git a/frontend/components/ui/input-group/InputGroupTextarea.vue b/frontend/components/ui/input-group/InputGroupTextarea.vue
new file mode 100644
index 0000000..efb6314
--- /dev/null
+++ b/frontend/components/ui/input-group/InputGroupTextarea.vue
@@ -0,0 +1,22 @@
+
+
+
+
+
diff --git a/frontend/components/ui/input-group/index.ts b/frontend/components/ui/input-group/index.ts
new file mode 100644
index 0000000..8db50e3
--- /dev/null
+++ b/frontend/components/ui/input-group/index.ts
@@ -0,0 +1,5 @@
+export { default as InputGroup } from './InputGroup.vue'
+export { default as InputGroupTextarea } from './InputGroupTextarea.vue'
+export { default as InputGroupAddon } from './InputGroupAddon.vue'
+export { default as InputGroupButton } from './InputGroupButton.vue'
+export { default as InputGroupText } from './InputGroupText.vue'
diff --git a/frontend/layouts/default.vue b/frontend/layouts/default.vue
index 06d0f3c..51c04fe 100644
--- a/frontend/layouts/default.vue
+++ b/frontend/layouts/default.vue
@@ -1,5 +1,6 @@