+ );
+};
-export default DashboardLayout
\ No newline at end of file
+export default DashboardLayout;
diff --git a/packages/app-akeru/src/app/(dashboard)/threads/features/assistants-list/assistants-list-item.tsx b/packages/app-akeru/src/app/(dashboard)/threads/features/assistants-list/assistants-list-item.tsx
new file mode 100644
index 0000000..3892215
--- /dev/null
+++ b/packages/app-akeru/src/app/(dashboard)/threads/features/assistants-list/assistants-list-item.tsx
@@ -0,0 +1,9 @@
+import React from 'react'
+
+const AssistantsListItem = () => {
+ return (
+
AssistantsListItem
+ )
+}
+
+export default AssistantsListItem
\ No newline at end of file
diff --git a/packages/app-akeru/src/app/(dashboard)/threads/features/assistants-list/assistants-list.tsx b/packages/app-akeru/src/app/(dashboard)/threads/features/assistants-list/assistants-list.tsx
new file mode 100644
index 0000000..86ed4d2
--- /dev/null
+++ b/packages/app-akeru/src/app/(dashboard)/threads/features/assistants-list/assistants-list.tsx
@@ -0,0 +1,9 @@
+import React from "react";
+
+const AssistantsList = () => {
+ return
+
+
;
+};
+
+export default AssistantsList;
diff --git a/packages/app-akeru/src/app/(dashboard)/threads/features/assistants-list/test-data.ts b/packages/app-akeru/src/app/(dashboard)/threads/features/assistants-list/test-data.ts
new file mode 100644
index 0000000..e69de29
diff --git a/packages/app-akeru/src/app/(dashboard)/threads/features/conversation-area/chat-display.tsx b/packages/app-akeru/src/app/(dashboard)/threads/features/conversation-area/chat-display.tsx
new file mode 100644
index 0000000..5222264
--- /dev/null
+++ b/packages/app-akeru/src/app/(dashboard)/threads/features/conversation-area/chat-display.tsx
@@ -0,0 +1,9 @@
+import React from 'react'
+
+const ChatDisplay = () => {
+ return (
+
+ )
+}
+
+export default ChatDisplay
\ No newline at end of file
diff --git a/packages/app-akeru/src/app/(dashboard)/threads/features/conversation-area/chat-input.tsx b/packages/app-akeru/src/app/(dashboard)/threads/features/conversation-area/chat-input.tsx
new file mode 100644
index 0000000..c066eff
--- /dev/null
+++ b/packages/app-akeru/src/app/(dashboard)/threads/features/conversation-area/chat-input.tsx
@@ -0,0 +1,11 @@
+import { Input } from '@/components/ui/input'
+import { Send } from 'lucide-react'
+import React from 'react'
+
+const ChatInput = () => {
+ return (
+
+ )
+}
+
+export default ChatInput
\ No newline at end of file
diff --git a/packages/app-akeru/src/app/(dashboard)/threads/features/conversation-area/conversation-area.tsx b/packages/app-akeru/src/app/(dashboard)/threads/features/conversation-area/conversation-area.tsx
new file mode 100644
index 0000000..5812f1a
--- /dev/null
+++ b/packages/app-akeru/src/app/(dashboard)/threads/features/conversation-area/conversation-area.tsx
@@ -0,0 +1,14 @@
+import React from 'react'
+import ChatInput from './chat-input'
+import ChatDisplay from './chat-display'
+
+const ConversationArea = () => {
+ return (
+
+
+
+
+ )
+}
+
+export default ConversationArea
\ No newline at end of file
diff --git a/packages/app-akeru/src/app/(dashboard)/threads/features/thread-list/test-data.ts b/packages/app-akeru/src/app/(dashboard)/threads/features/thread-list/test-data.ts
new file mode 100644
index 0000000..a381904
--- /dev/null
+++ b/packages/app-akeru/src/app/(dashboard)/threads/features/thread-list/test-data.ts
@@ -0,0 +1,44 @@
+import { ThreadsListItemProps } from "./threads-list-item";
+
+export const THREADS_LIST_MOCK_DATA: ThreadsListItemProps[] = [
+ {
+ title: "Understanding React Hooks",
+ description: "A deep dive into the use of hooks in React for state and lifecycle management.",
+ date: "2024-05-01"
+ },
+ {
+ title: "Announcing TypeScript 5.0",
+ description: "Explore the new features and improvements in the latest TypeScript release.",
+ date: "2024-04-15"
+ },
+ {
+ title: "Getting Started with Python",
+ description: "An introductory guide to programming in Python for beginners.",
+ date: "2024-03-20"
+ },
+ {
+ title: "AI Breakthrough in Natural Language Processing",
+ description: "How the latest advancements in AI are revolutionizing language understanding.",
+ date: "2024-02-10"
+ },
+ {
+ title: "Join the Annual Developer Conference",
+ description: "Meet and network with other developers at this year's conference. Keynotes, workshops, and more!",
+ date: "2024-06-05"
+ },
+ {
+ title: "Hiring Frontend Engineers",
+ description: "We are looking for talented frontend engineers to join our team. Apply now!",
+ date: "2024-05-20"
+ },
+ {
+ title: "Top 10 Books for Software Engineers",
+ description: "A curated list of must-read books for anyone in the software development field.",
+ date: "2024-01-30"
+ },
+ {
+ title: "Critical Security Patch Released",
+ description: "A new security patch has been released to address vulnerabilities in the system. Update immediately.",
+ date: "2024-04-05"
+ }
+];
diff --git a/packages/app-akeru/src/app/(dashboard)/threads/features/thread-list/threads-list-item.tsx b/packages/app-akeru/src/app/(dashboard)/threads/features/thread-list/threads-list-item.tsx
new file mode 100644
index 0000000..e99657d
--- /dev/null
+++ b/packages/app-akeru/src/app/(dashboard)/threads/features/thread-list/threads-list-item.tsx
@@ -0,0 +1,18 @@
+import React from "react";
+
+export interface ThreadsListItemProps {
+ title: string;
+ description: string;
+ date: string;
+ isActive?: boolean;
+}
+
+const ThreadsListItem = (props: ThreadsListItemProps) => {
+ return (
+
+
{props.title}
+
+ );
+};
+
+export default ThreadsListItem;
diff --git a/packages/app-akeru/src/app/(dashboard)/threads/features/thread-list/threads-list.tsx b/packages/app-akeru/src/app/(dashboard)/threads/features/thread-list/threads-list.tsx
new file mode 100644
index 0000000..8293498
--- /dev/null
+++ b/packages/app-akeru/src/app/(dashboard)/threads/features/thread-list/threads-list.tsx
@@ -0,0 +1,28 @@
+import React from "react";
+import { THREADS_LIST_MOCK_DATA } from "./test-data";
+import { ScrollArea } from "@/components/ui/scroll-area";
+import ThreadsListItem from "./threads-list-item";
+import { Input } from "@/components/ui/input";
+import { Search } from "lucide-react";
+
+const ThreadsList = () => {
+ return (
+
+
+
+
+
+ {/* This is just for the overflow gradient */}
+
+ {/* This is just for the overflow gradient */}
+