diff --git a/src/app/playground/page.tsx b/src/app/playground/page.tsx new file mode 100644 index 0000000..eb90ea8 --- /dev/null +++ b/src/app/playground/page.tsx @@ -0,0 +1,104 @@ +"use client"; + +import { useState } from "react"; +import { Editor } from "@monaco-editor/react"; +import { Tabs, TabsList, TabsTrigger } from "@/components/ui/tabs"; +import { ScrollArea, ScrollBar } from "@/components/ui/scroll-area"; +import { COriginal, CplusplusOriginal, JavaOriginal } from "devicons-react"; + +const files: { + [key: string]: { name: string; language: string; value: string }; +} = { + c: { + name: "main.c", + language: "c", + value: `#include +int main() { + printf("Hello, World!"); + return 0; +}`, + }, + cpp: { + name: "main.cpp", + language: "cpp", + value: `#include +int main() { + std::cout << "Hello, World!"; + return 0; +}`, + }, + java: { + name: "Main.java", + language: "java", + value: `public class Main { + public static void main(String[] args) { + System.out.println("Hello, World!"); + } +}`, + }, +}; + +export default function PlaygroundPage() { + const [language, setLanguage] = useState("c"); + const file = files[language]; + + return ( +
+ + + + setLanguage("c")} + disabled={language === "c"} + > + + setLanguage("cpp")} + disabled={language === "cpp"} + > + + setLanguage("java")} + disabled={language === "java"} + > + + + + + + +
+ ); +}