From 0448b000795c1f808ce0780eda22878add00dd07 Mon Sep 17 00:00:00 2001 From: donny Date: Thu, 28 May 2026 11:33:01 -0700 Subject: [PATCH] feat: update app pages and layout --- app/about/page.tsx | 95 ++++++++++++++++++++++++++++++++++++++++++- app/layout.tsx | 4 +- app/page.tsx | 80 +++++++++++++++++------------------- app/projects/page.tsx | 12 +++++- app/uses/page.tsx | 69 ++++++++++++++++++++++++++++++- 5 files changed, 211 insertions(+), 49 deletions(-) diff --git a/app/about/page.tsx b/app/about/page.tsx index d0a1161..8f551cc 100644 --- a/app/about/page.tsx +++ b/app/about/page.tsx @@ -1,5 +1,11 @@ -import Hero from "@/components/content/Hero"; import type { Metadata } from "next"; +import { IconBrandLinkedinFilled, IconMailFilled } from "@tabler/icons-react"; +import Hero from "@/components/content/Hero"; +import SectionLabel from "@/components/layout/SectionLabel"; +import AccentLink from "@/components/navigation/AccentLink"; +import GiteaIcon from "@/components/icons/GiteaIcon"; +import Tooltip from "@/components/ui/Tooltip"; +import { colors, education, timeline } from "@/constants"; export const metadata: Metadata = { title: "About — Angel Mankel", @@ -7,6 +13,91 @@ export const metadata: Metadata = { export default function AboutPage() { return ( - +
+ +
+

+ I came up through healthcare IT — help desk, then Salesforce + administration, then software engineering. A path that taught me + to translate between operations, design, and engineering without + losing the thread. +

+

+ These days I write React and TypeScript for production, lead + component-library work, and spend a lot of time in Claude Code — + custom slash commands, MCP integrations, agent workflows. The + AI-tooling layer is reshaping how I work across the stack. +

+

+ Based in Arizona, looking for remote-US roles where shipping + frontend product and building AI tooling around it are both + first-class. Bonus points for teams that take design seriously + and don't hand things off at every layer. +

+
+
+ +
+ +
    + {education.map((row) => ( +
  • + + {row.span} + + {row.degree} · {row.location} +
  • + ))} +
+
+ +
+ +
    + {timeline.map((row) => ( +
  • + + {row.span} + + {row.role} +
  • + ))} +
+
+ + + + +
); } diff --git a/app/layout.tsx b/app/layout.tsx index 1c00a0f..b63c838 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -4,6 +4,7 @@ import "./globals.css"; import Header from "@/components/layout/Header"; import Footer from "@/components/layout/Footer"; import Container from "@/components/layout/Container"; +import Cursor from "@/components/ui/Cursor"; const inter = Inter({ variable: "--font-inter", @@ -29,9 +30,10 @@ export default function RootLayout({ return ( + {/* */}
{children}