From c33e824c7fb2a2861be3b9915e13072a0cb21a69 Mon Sep 17 00:00:00 2001 From: ARCHILODHA Date: Fri, 6 Mar 2026 09:56:35 +0530 Subject: [PATCH] Add mobile navigation menu for small screen --- app/globals.css | 11 +- app/page.tsx | 281 ++++++------------------------------------------ 2 files changed, 38 insertions(+), 254 deletions(-) diff --git a/app/globals.css b/app/globals.css index a2dc41e..80dc0f8 100644 --- a/app/globals.css +++ b/app/globals.css @@ -1,17 +1,12 @@ -@import "tailwindcss"; +@tailwind base; +@tailwind components; +@tailwind utilities; :root { --background: #ffffff; --foreground: #171717; } -@theme inline { - --color-background: var(--background); - --color-foreground: var(--foreground); - --font-sans: var(--font-geist-sans); - --font-mono: var(--font-geist-mono); -} - @media (prefers-color-scheme: dark) { :root { --background: #0a0a0a; diff --git a/app/page.tsx b/app/page.tsx index 669cae5..24c4b72 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -1,262 +1,51 @@ -import Image from "next/image"; -import Link from "next/link"; +"use client"; -const basePath = process.env.NODE_ENV === "production" ? "/gfbs3-portfolio-demo" : ""; +import { useState } from "react"; +import Link from "next/link"; export default function Home() { + const [menuOpen, setMenuOpen] = useState(false); + return ( -
- {/* Grid Background */} -
-
-
-
+
- {/* Navigation */} - + - {/* Philosophy / Approach */} -
-
-

- {"// ABOUT_ME"} -

- - {/* Profile Image - Replace src with your image in /public */} -
-
- {/* Scanline effect */} -
- - Profile -
-
-
-

- Every developer has a unique journey. Share yours here—whether you're self-taught, a bootcamp grad, or transitioning careers. Your story matters. Talk about what drives you to code and the impact you want to make. -

-
-
-
-
-

STACK_TRACE

-
    -
  • JavaScript / Python / TypeScript
  • -
  • React / Next.js / Node.js
  • -
  • Git / GitHub / VS Code
  • -
-
-
-

PROTOCOLS

-
    -
  • Always learning
  • -
  • Ship > Perfect
  • -
  • Open source contributor
  • -
-
-
-
-
-
+
+

+ BUILD YOUR
+ DEVELOPER PORTFOLIO +

- {/* Contact */} -
-
-

- READY TO LAUNCH? -

-

- Fork this template on GitHub and make it yours. Update the content, add your projects, and deploy to GitHub Pages in under 30 minutes. -

-
- - FORK ON GITHUB - -
- - - -
-
-
-
+

A beginner-friendly portfolio template.

+ + GET STARTED
-
- ); -} - -function ProjectCard({ title, description, tags, color, href }: { title: string, description: string, tags: string[], color: "cyan" | "fuchsia" | "purple" | "yellow", href: string }) { - // Valid color options for the card styling - const validColors = ["cyan", "fuchsia", "purple", "yellow"] as const; - - // Runtime validation: default to "cyan" if an invalid color is provided - const safeColor = validColors.includes(color) ? color : "cyan"; - - const colorClasses = { - cyan: "group-hover:border-cyan-500/50 group-hover:shadow-[0_0_20px_rgba(34,211,238,0.2)]", - fuchsia: "group-hover:border-fuchsia-500/50 group-hover:shadow-[0_0_20px_rgba(232,121,249,0.2)]", - purple: "group-hover:border-purple-500/50 group-hover:shadow-[0_0_20px_rgba(168,85,247,0.2)]", - yellow: "group-hover:border-yellow-500/50 group-hover:shadow-[0_0_20px_rgba(234,179,8,0.2)]", - }; - - const textColors = { - cyan: "group-hover:text-cyan-400", - fuchsia: "group-hover:text-fuchsia-400", - purple: "group-hover:text-purple-400", - yellow: "group-hover:text-yellow-400", - }; - - return ( - -
-

- {title} -

- -
-

- {description} -

-
- {tags.map(tag => ( - - {tag} - - ))} -
- - ); -} -function SocialLink({ href, label }: { href: string, label: string }) { - return ( - - {label} - +
); -} - -// Simple Icons -function ArrowRightIcon({ className }: { className?: string }) { - return ( - - - - - ) -} - -function ArrowUpRightIcon({ className }: { className?: string }) { - return ( - - - - - ) -} +} \ No newline at end of file