From c3bbf198623024a594f1fab5bbeb63539c3344f4 Mon Sep 17 00:00:00 2001 From: nicholai Date: Sat, 6 Dec 2025 11:56:28 -0700 Subject: [PATCH] Update site content and layout for personal branding - Changed site title and description to reflect personal branding as a VFX Artist & Technical Generalist. - Added social links for contact and networking. - Revamped footer layout for improved aesthetics and functionality. - Reorganized blog and homepage layouts to enhance user experience and visual appeal. - Updated global styles to incorporate Tailwind CSS for a modern design approach. --- src/components/BaseHead.astro | 12 +- src/components/CustomCursor.tsx | 43 +++ src/components/Footer.astro | 97 +++---- src/components/GridOverlay.astro | 21 ++ src/components/Navigation.astro | 39 +++ src/components/sections/Experience.astro | 99 +++++++ src/components/sections/FeaturedProject.astro | 55 ++++ src/components/sections/Hero.astro | 60 ++++ src/components/sections/Skills.astro | 73 +++++ src/consts.ts | 9 +- src/layouts/BaseLayout.astro | 61 ++++ src/layouts/BlogPost.astro | 103 ++----- src/pages/about.astro | 63 ----- src/pages/blog/index.astro | 148 +++------- src/pages/index.astro | 61 +--- src/styles/global.css | 265 ++++++++---------- 16 files changed, 713 insertions(+), 496 deletions(-) create mode 100644 src/components/CustomCursor.tsx create mode 100644 src/components/GridOverlay.astro create mode 100644 src/components/Navigation.astro create mode 100644 src/components/sections/Experience.astro create mode 100644 src/components/sections/FeaturedProject.astro create mode 100644 src/components/sections/Hero.astro create mode 100644 src/components/sections/Skills.astro create mode 100644 src/layouts/BaseLayout.astro delete mode 100644 src/pages/about.astro diff --git a/src/components/BaseHead.astro b/src/components/BaseHead.astro index a0f9a7c..20ebd1c 100644 --- a/src/components/BaseHead.astro +++ b/src/components/BaseHead.astro @@ -30,9 +30,15 @@ const { title, description, image = FallbackImage } = Astro.props; /> - - - + + + + + + + diff --git a/src/components/CustomCursor.tsx b/src/components/CustomCursor.tsx new file mode 100644 index 0000000..b14a43b --- /dev/null +++ b/src/components/CustomCursor.tsx @@ -0,0 +1,43 @@ +import React, { useEffect, useRef } from 'react'; + +const CustomCursor = () => { + const dotRef = useRef(null); + const outlineRef = useRef(null); + + useEffect(() => { + const dot = dotRef.current; + const outline = outlineRef.current; + + if (!dot || !outline) return; + + const onMouseMove = (e: MouseEvent) => { + const posX = e.clientX; + const posY = e.clientY; + + // Dot follows instantly + dot.style.left = `${posX}px`; + dot.style.top = `${posY}px`; + + // Outline follows with animation + outline.animate({ + left: `${posX}px`, + top: `${posY}px` + }, { duration: 500, fill: "forwards" }); + }; + + window.addEventListener('mousemove', onMouseMove); + + return () => { + window.removeEventListener('mousemove', onMouseMove); + }; + }, []); + + return ( + <> +
+
+ + ); +}; + +export default CustomCursor; diff --git a/src/components/Footer.astro b/src/components/Footer.astro index 96c2fce..a32b2db 100644 --- a/src/components/Footer.astro +++ b/src/components/Footer.astro @@ -2,61 +2,44 @@ const today = new Date(); --- -