Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion apps/app/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,13 @@
"lint": "eslint"
},
"dependencies": {
"clsx": "^2.1.1",
"framer-motion": "^12.29.0",
"lucide-react": "^0.563.0",
"next": "16.1.4",
"react": "19.2.3",
"react-dom": "19.2.3"
"react-dom": "19.2.3",
"tailwind-merge": "^3.4.0"
},
"devDependencies": {
"@tailwindcss/postcss": "^4",
Expand Down
49 changes: 35 additions & 14 deletions apps/app/src/app/globals.css
Original file line number Diff line number Diff line change
@@ -1,26 +1,47 @@
@import "tailwindcss";

:root {
--background: #ffffff;
--foreground: #171717;
--background: 0 0% 3%;
--foreground: 0 0% 98%;
--card: 0 0% 6%;
--card-foreground: 0 0% 98%;
--primary: 142 71% 45%;
--primary-foreground: 0 0% 2%;
--secondary: 0 0% 10%;
--muted: 0 0% 15%;
--muted-foreground: 0 0% 60%;
--border: 0 0% 15%;
--ring: 142 71% 45%;
}

@theme inline {
--color-background: var(--background);
--color-foreground: var(--foreground);
--font-sans: var(--font-geist-sans);
--font-mono: var(--font-geist-mono);
--color-background: hsl(var(--background));
--color-foreground: hsl(var(--foreground));
--color-primary: hsl(var(--primary));
--color-primary-foreground: hsl(var(--primary-foreground));
--font-sans: var(--font-syne), system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
--font-mono: var(--font-jetbrains), ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace;
}

@media (prefers-color-scheme: dark) {
:root {
--background: #0a0a0a;
--foreground: #ededed;
}
* {
box-sizing: border-box;
padding: 0;
margin: 0;
}

html,
body {
background: var(--background);
color: var(--foreground);
font-family: Arial, Helvetica, sans-serif;
background: hsl(var(--background));
color: hsl(var(--foreground));
min-height: 100vh;
overflow-x: hidden;
}

/* Font classes */
.font-sans {
font-family: var(--font-syne), system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

.font-mono {
font-family: var(--font-jetbrains), ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace;
}
37 changes: 26 additions & 11 deletions apps/app/src/app/layout.tsx
Original file line number Diff line number Diff line change
@@ -1,20 +1,37 @@
import type { Metadata } from "next";
import { Geist, Geist_Mono } from "next/font/google";
import { JetBrains_Mono, Syne } from "next/font/google";
import "./globals.css";

const geistSans = Geist({
variable: "--font-geist-sans",
const syne = Syne({
variable: "--font-syne",
subsets: ["latin"],
weight: ["400", "500", "600", "700", "800"],
display: "swap",
});

const geistMono = Geist_Mono({
variable: "--font-geist-mono",
const jetbrainsMono = JetBrains_Mono({
variable: "--font-jetbrains",
subsets: ["latin"],
display: "swap",
});

export const metadata: Metadata = {
title: "Create Next App",
description: "Generated by create next app",
title: "OpenDSA App - Coming Soon",
description: "The open-source algorithm visualization platform. Interactive visualizations for sorting, searching, graphs, trees, and more.",
keywords: ["algorithms", "data structures", "visualization", "learning", "education", "open source"],
authors: [{ name: "Solomon Eshun", url: "https://github.com/soloshun" }],
openGraph: {
title: "OpenDSA - Coming Soon",
description: "The open-source algorithm visualization platform is under development.",
url: "https://app.opendsa.dev",
siteName: "OpenDSA",
type: "website",
},
twitter: {
card: "summary_large_image",
title: "OpenDSA - Coming Soon",
description: "The open-source algorithm visualization platform is under development.",
},
};

export default function RootLayout({
Expand All @@ -23,10 +40,8 @@ export default function RootLayout({
children: React.ReactNode;
}>) {
return (
<html lang="en">
<body
className={`${geistSans.variable} ${geistMono.variable} antialiased`}
>
<html lang="en" className={`dark ${syne.variable} ${jetbrainsMono.variable}`}>
<body className="antialiased font-sans">
{children}
</body>
</html>
Expand Down
Loading