-
- {/* setActivePanel('fileSystem')}>
- File System
-
- setActivePanel('sceneContext')}>
- Scene Context
- */}
- {activePanel === 'fileSystem' ? (
-
- ) : (
-
- )}
-
-
-
+ {/* Header */}
+
+
-
-
-
- Editor
- Browser
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {
- // Update messages state with the user's message
- setMessages(prev => [...prev, {
- text: `User: ${text}`,
- type: 'message' as const
- }]);
- }}
+
+
+ Cotomata
+
+
+
+ {/* Main Content */}
+
+ {/* Background Effects */}
+
-
+
+
+ {/* Content */}
+
+
+
+
+
+
+ {/* Split text into individual letters for animation */}
+ {"Cotomata".split("").map((letter, index) => (
+
+ {letter}
+
+ ))}
+
+
+
+ Research Prototype for Studying Cooperative Agents
+
+
+
+
+ {isInitializing ? (
+
+
+ Initializing your development environment...
+
+
+
+ ) : (
+
+
+
+ )}
+
+
+
+
);
}
\ No newline at end of file
diff --git a/frontend/app/workspace/layout.tsx b/frontend/app/workspace/layout.tsx
new file mode 100644
index 0000000..8745503
--- /dev/null
+++ b/frontend/app/workspace/layout.tsx
@@ -0,0 +1,49 @@
+import type { Metadata } from "next";
+import localFont from "next/font/local";
+import "../globals.css";
+import { SidebarProvider, SidebarTrigger } from "@/components/ui/sidebar"
+import { AppSidebar } from "@/components/sidebar";
+import { CSSProperties } from 'react';
+import { LoadingProvider } from "../../context/loading-provider";
+
+const geistSans = localFont({
+ src: "../fonts/GeistVF.woff",
+ variable: "--font-geist-sans",
+ weight: "100 900",
+});
+const geistMono = localFont({
+ src: "../fonts/GeistMonoVF.woff",
+ variable: "--font-geist-mono",
+ weight: "100 900",
+});
+
+export const metadata: Metadata = {
+ title: "Cotomata",
+ description: "Research Prototype for Studying Cooperative Agents",
+};
+
+export default function RootLayout({
+ children,
+}: Readonly<{
+ children: React.ReactNode;
+}>) {
+ return (
+
+
+