Initial open-source release

This commit is contained in:
Will Chen
2025-04-11 09:37:05 -07:00
commit 43f67e0739
208 changed files with 45476 additions and 0 deletions

25
src/app/TitleBar.tsx Normal file
View File

@@ -0,0 +1,25 @@
import { useAtom } from "jotai";
import { selectedAppIdAtom } from "@/atoms/appAtoms";
import { useLoadApps } from "@/hooks/useLoadApps";
import { useRouter } from "@tanstack/react-router";
export const TitleBar = () => {
const [selectedAppId] = useAtom(selectedAppIdAtom);
const { apps } = useLoadApps();
const { navigate } = useRouter();
// Get selected app name
const selectedApp = apps.find((app) => app.id === selectedAppId);
const displayText = selectedApp
? `App: ${selectedApp.name}`
: "(no app selected)";
return (
<div className="z-11 w-full h-8 bg-(--sidebar) absolute top-0 left-0 app-region-drag flex items-center">
<div className="no-app-region-drag pl-24 text-sm font-medium">
{displayText}
</div>
<div className="flex-1 text-center text-sm font-medium">Dyad</div>
</div>
);
};

26
src/app/layout.tsx Normal file
View File

@@ -0,0 +1,26 @@
import { SidebarProvider } from "@/components/ui/sidebar";
import { AppSidebar } from "@/components/app-sidebar";
import { ThemeProvider } from "../contexts/ThemeContext";
import { Toaster } from "sonner";
import { TitleBar } from "./TitleBar";
export default function RootLayout({
children,
}: {
children: React.ReactNode;
}) {
return (
<>
<TitleBar />
<ThemeProvider>
<SidebarProvider>
<AppSidebar />
<div className="flex h-screenish w-full overflow-x-hidden mt-8 mb-4 mr-4 border-t border-l border-border rounded-lg bg-background">
{children}
</div>
<Toaster richColors />
</SidebarProvider>
</ThemeProvider>
</>
);
}