Merge version_6 into main #6
@@ -1,43 +1,41 @@
|
||||
"use client";
|
||||
|
||||
import Link from "next/link";
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import NavbarStyleFullscreen from "@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen";
|
||||
import TextSplitAbout from "@/components/sections/about/TextSplitAbout";
|
||||
import TestimonialCardFifteen from "@/components/sections/testimonial/TestimonialCardFifteen";
|
||||
import SocialProofOne from "@/components/sections/socialProof/SocialProofOne";
|
||||
import ContactCTA from "@/components/sections/contact/ContactCTA";
|
||||
import FooterBaseReveal from "@/components/sections/footer/FooterBaseReveal";
|
||||
|
||||
export default function AboutPage() {
|
||||
const navItems = [
|
||||
{ name: "Home", id: "/" },
|
||||
{ name: "Projects", id: "/projects" },
|
||||
{ name: "Explore My Works", id: "/explore" },
|
||||
{ name: "Vision", id: "/about" },
|
||||
{ name: "Connect", id: "/connect" },
|
||||
{ name: "Writing", id: "/writing" },
|
||||
{ name: "Thoughts", id: "/thoughts" },
|
||||
];
|
||||
|
||||
const footerColumns = [
|
||||
{
|
||||
title: "Navigation", items: [
|
||||
{ label: "Home", href: "/" },
|
||||
{ label: "Projects", href: "/projects" },
|
||||
{ label: "Explore My Works", href: "/explore" },
|
||||
{ label: "Vision", href: "/about" },
|
||||
{ label: "Contact", href: "/contact" },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Connect", items: [
|
||||
{ label: "Twitter", href: "https://twitter.com" },
|
||||
{ label: "LinkedIn", href: "https://linkedin.com" },
|
||||
{ label: "Instagram", href: "https://instagram.com" },
|
||||
{ label: "Calendly", href: "https://calendly.com/karu-navolab/growth-engine-demo-navo-lab" },
|
||||
{ label: "Substack", href: "https://substack.com/@karuthompson" },
|
||||
{ label: "X", href: "https://x.com/KaruThompson" },
|
||||
{ label: "Email", href: "mailto:hello@example.com" },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Resources", items: [
|
||||
{ label: "Newsletter", href: "#" },
|
||||
{ label: "Blog", href: "/writing" },
|
||||
{ label: "Thoughts", href: "/thoughts" },
|
||||
{ label: "Privacy", href: "#" },
|
||||
{ label: "Terms", href: "#" },
|
||||
],
|
||||
@@ -57,252 +55,49 @@ export default function AboutPage() {
|
||||
secondaryButtonStyle="layered"
|
||||
headingFontWeight="light"
|
||||
>
|
||||
<style>{`
|
||||
@keyframes drawLine {
|
||||
0% {
|
||||
stroke-dashoffset: 1000;
|
||||
opacity: 0;
|
||||
}
|
||||
10% {
|
||||
opacity: 1;
|
||||
}
|
||||
90% {
|
||||
opacity: 1;
|
||||
}
|
||||
100% {
|
||||
stroke-dashoffset: 0;
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes tiltShift {
|
||||
0%, 100% {
|
||||
transform: translateY(0) rotateZ(-1deg);
|
||||
}
|
||||
50% {
|
||||
transform: translateY(-8px) rotateZ(1deg);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes sketchCursor {
|
||||
0% {
|
||||
opacity: 1;
|
||||
transform: scale(1);
|
||||
}
|
||||
100% {
|
||||
opacity: 0;
|
||||
transform: scale(0.8);
|
||||
}
|
||||
}
|
||||
|
||||
.decorative-line {
|
||||
stroke-dasharray: 1000;
|
||||
animation: drawLine 4s ease-in-out 2s infinite;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.tilt-media {
|
||||
animation: tiltShift 6s ease-in-out infinite;
|
||||
}
|
||||
|
||||
.sketch-trail {
|
||||
position: fixed;
|
||||
pointer-events: none;
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
.sketch-mark {
|
||||
position: absolute;
|
||||
border-radius: 50%;
|
||||
animation: sketchCursor 1.5s ease-out forwards;
|
||||
}
|
||||
`}</style>
|
||||
|
||||
<canvas
|
||||
id="sketch-canvas"
|
||||
style={{
|
||||
position: "fixed", top: 0,
|
||||
left: 0,
|
||||
width: "100%", height: "100%", pointerEvents: "none", zIndex: 5,
|
||||
}}
|
||||
/>
|
||||
|
||||
<div id="nav" data-section="nav">
|
||||
<NavbarStyleFullscreen
|
||||
navItems={navItems}
|
||||
brandName="Portfolio"
|
||||
brandName="Karu Thompson"
|
||||
bottomLeftText="Crafted with intention"
|
||||
bottomRightText="Let's connect"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<svg
|
||||
style={{
|
||||
position: "absolute", top: "100px", left: "50%", transform: "translateX(-50%)", width: "200px", height: "2px", pointerEvents: "none", zIndex: 1,
|
||||
}}
|
||||
>
|
||||
<line
|
||||
x1="0"
|
||||
y1="1"
|
||||
x2="200"
|
||||
y2="1"
|
||||
stroke="currentColor"
|
||||
strokeWidth="1"
|
||||
opacity="0.3"
|
||||
className="decorative-line"
|
||||
/>
|
||||
</svg>
|
||||
|
||||
<div id="about-vision" data-section="about-vision">
|
||||
<div id="about" data-section="about">
|
||||
<TextSplitAbout
|
||||
title="Vision & Creative Philosophy"
|
||||
title="My Vision & Values"
|
||||
description={[
|
||||
"My journey has been defined by a commitment to intentional design—creating visual narratives that respect the viewer's intelligence and imagination. I believe that every design decision should serve a purpose, whether functional or emotional, creating experiences that resonate deeply and leave lasting impressions.", "I draw inspiration from film aesthetics, the elegance of vintage typography, and the power of minimalist principles. These influences guide my approach to creating digital experiences that feel deliberately crafted, inviting audiences to pause, reflect, and engage meaningfully with ideas and stories that matter."]}
|
||||
useInvertedBackground={false}
|
||||
"I believe in the power of <i>intentional design</i> to create meaningful connections between ideas, people, and experiences. Every project I undertake reflects a commitment to <i>aesthetic sophistication paired with strategic clarity</i>.", "My work spans creative direction, digital experience design, business strategy, and cultural storytelling. At the core is a belief that <i>creativity without purpose is decoration</i>, and <i>strategy without artistry is mechanical</i>. The most compelling work emerges when these forces are in balance."
|
||||
]}
|
||||
useInvertedBackground={true}
|
||||
showBorder={true}
|
||||
buttons={[{ text: "Explore My Work", href: "/projects" }]}
|
||||
buttons={[{ text: "Explore My Works", href: "/explore" }]}
|
||||
buttonAnimation="blur-reveal"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<svg
|
||||
style={{
|
||||
position: "absolute", top: "600px", left: "10%", width: "150px", height: "50px", pointerEvents: "none", zIndex: 1,
|
||||
}}
|
||||
>
|
||||
<path
|
||||
d="M 10 30 Q 40 5 80 30 T 150 30"
|
||||
stroke="currentColor"
|
||||
strokeWidth="1.5"
|
||||
fill="none"
|
||||
opacity="0.2"
|
||||
className="decorative-line"
|
||||
/>
|
||||
</svg>
|
||||
|
||||
<div id="testimonial-about" data-section="testimonial-about">
|
||||
<TestimonialCardFifteen
|
||||
testimonial="What sets this creative professional apart is their ability to synthesize complex ideas into elegant, intentional solutions. Their work demonstrates deep understanding of both form and function, creating experiences that feel both timeless and contemporary."
|
||||
rating={5}
|
||||
author="Brand Strategist, Creative Agency"
|
||||
avatars={[
|
||||
{
|
||||
src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AP5BwcOCEdbUvGXGzmfDl4faxC/uploaded-1772588138755-nsxcu3nt.png", alt: "Industry colleague"},
|
||||
<div id="contact-cta" data-section="contact-cta">
|
||||
<ContactCTA
|
||||
tag="Get In Touch"
|
||||
title="Let's collaborate on something meaningful"
|
||||
description="Whether you have a project in mind, want to discuss ideas, or simply want to connect, I'd love to hear from you."
|
||||
background={{ variant: "plain" }}
|
||||
buttons={[
|
||||
{ text: "Schedule a Call", href: "https://calendly.com/karu-navolab/growth-engine-demo-navo-lab" },
|
||||
{ text: "Send an Email", href: "mailto:hello@example.com" },
|
||||
]}
|
||||
ratingAnimation="blur-reveal"
|
||||
avatarsAnimation="blur-reveal"
|
||||
buttonAnimation="blur-reveal"
|
||||
useInvertedBackground={true}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<svg
|
||||
style={{
|
||||
position: "absolute", top: "1000px", right: "5%", width: "100px", height: "100px", pointerEvents: "none", zIndex: 1,
|
||||
}}
|
||||
>
|
||||
<circle
|
||||
cx="50"
|
||||
cy="50"
|
||||
r="40"
|
||||
stroke="currentColor"
|
||||
strokeWidth="1"
|
||||
fill="none"
|
||||
opacity="0.2"
|
||||
className="decorative-line"
|
||||
/>
|
||||
</svg>
|
||||
|
||||
<div id="connect-channels" data-section="connect-channels">
|
||||
<SocialProofOne
|
||||
title="Let's Connect"
|
||||
description="I'm always interested in meaningful collaborations and conversations about creative work, design philosophy, and storytelling. Reach out through your preferred channel."
|
||||
textboxLayout="default"
|
||||
useInvertedBackground={false}
|
||||
names={["Twitter", "LinkedIn", "Instagram", "Email", "Newsletter"]}
|
||||
speed={40}
|
||||
showCard={true}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="footer" data-section="footer">
|
||||
<FooterBaseReveal
|
||||
columns={footerColumns}
|
||||
copyrightText="© 2025 Portfolio. Crafted with intention and creative vision."
|
||||
copyrightText="© 2025 Karu Thompson. Crafted with intention and creative vision."
|
||||
/>
|
||||
</div>
|
||||
|
||||
<script>{`
|
||||
(function() {
|
||||
const canvas = document.getElementById('sketch-canvas');
|
||||
if (!canvas) return;
|
||||
|
||||
const ctx = canvas.getContext('2d');
|
||||
canvas.width = window.innerWidth;
|
||||
canvas.height = window.innerHeight;
|
||||
|
||||
let mouseX = 0;
|
||||
let mouseY = 0;
|
||||
let isDrawing = false;
|
||||
|
||||
const strokes = [];
|
||||
|
||||
const sketchColors = ['rgba(0, 0, 0, 0.15)', 'rgba(100, 100, 100, 0.1)', 'rgba(50, 50, 50, 0.12)'];
|
||||
|
||||
document.addEventListener('mousemove', (e) => {
|
||||
mouseX = e.clientX;
|
||||
mouseY = e.clientY;
|
||||
|
||||
if (Math.random() > 0.92) {
|
||||
const offsets = [
|
||||
{ x: Math.random() * 20 - 10, y: Math.random() * 20 - 10 },
|
||||
{ x: Math.random() * 15 - 7, y: Math.random() * 15 - 7 }
|
||||
];
|
||||
|
||||
offsets.forEach(offset => {
|
||||
const stroke = {
|
||||
x: mouseX + offset.x,
|
||||
y: mouseY + offset.y,
|
||||
size: Math.random() * 3 + 1,
|
||||
opacity: Math.random() * 0.4 + 0.3,
|
||||
color: sketchColors[Math.floor(Math.random() * sketchColors.length)],
|
||||
life: 1
|
||||
};
|
||||
strokes.push(stroke);
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
function animate() {
|
||||
ctx.clearRect(0, 0, canvas.width, canvas.height);
|
||||
|
||||
for (let i = strokes.length - 1; i >= 0; i--) {
|
||||
const stroke = strokes[i];
|
||||
stroke.life -= 0.02;
|
||||
|
||||
if (stroke.life <= 0) {
|
||||
strokes.splice(i, 1);
|
||||
continue;
|
||||
}
|
||||
|
||||
ctx.fillStyle = stroke.color;
|
||||
ctx.globalAlpha = stroke.life * 0.5;
|
||||
ctx.beginPath();
|
||||
ctx.arc(stroke.x, stroke.y, stroke.size, 0, Math.PI * 2);
|
||||
ctx.fill();
|
||||
}
|
||||
|
||||
ctx.globalAlpha = 1;
|
||||
requestAnimationFrame(animate);
|
||||
}
|
||||
|
||||
animate();
|
||||
|
||||
window.addEventListener('resize', () => {
|
||||
canvas.width = window.innerWidth;
|
||||
canvas.height = window.innerHeight;
|
||||
});
|
||||
})();
|
||||
`}</script>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
|
||||
102
src/app/connect/page.tsx
Normal file
102
src/app/connect/page.tsx
Normal file
@@ -0,0 +1,102 @@
|
||||
"use client";
|
||||
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import NavbarStyleFullscreen from "@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen";
|
||||
import SocialProofOne from "@/components/sections/socialProof/SocialProofOne";
|
||||
import ContactCTA from "@/components/sections/contact/ContactCTA";
|
||||
import FooterBaseReveal from "@/components/sections/footer/FooterBaseReveal";
|
||||
|
||||
export default function ConnectPage() {
|
||||
const navItems = [
|
||||
{ name: "Home", id: "/" },
|
||||
{ name: "Explore My Works", id: "/explore" },
|
||||
{ name: "Vision", id: "/about" },
|
||||
{ name: "Connect", id: "/connect" },
|
||||
{ name: "Thoughts", id: "/thoughts" },
|
||||
];
|
||||
|
||||
const footerColumns = [
|
||||
{
|
||||
title: "Navigation", items: [
|
||||
{ label: "Home", href: "/" },
|
||||
{ label: "Explore My Works", href: "/explore" },
|
||||
{ label: "Vision", href: "/about" },
|
||||
{ label: "Contact", href: "/contact" },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Connect", items: [
|
||||
{ label: "Calendly", href: "https://calendly.com/karu-navolab/growth-engine-demo-navo-lab" },
|
||||
{ label: "Substack", href: "https://substack.com/@karuthompson" },
|
||||
{ label: "X", href: "https://x.com/KaruThompson" },
|
||||
{ label: "Email", href: "mailto:hello@example.com" },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Resources", items: [
|
||||
{ label: "Newsletter", href: "#" },
|
||||
{ label: "Thoughts", href: "/thoughts" },
|
||||
{ label: "Privacy", href: "#" },
|
||||
{ label: "Terms", href: "#" },
|
||||
],
|
||||
},
|
||||
];
|
||||
|
||||
return (
|
||||
<ThemeProvider
|
||||
defaultButtonVariant="elastic-effect"
|
||||
defaultTextAnimation="background-highlight"
|
||||
borderRadius="pill"
|
||||
contentWidth="smallMedium"
|
||||
sizing="largeSmallSizeMediumTitles"
|
||||
background="floatingGradient"
|
||||
cardStyle="layered-gradient"
|
||||
primaryButtonStyle="radial-glow"
|
||||
secondaryButtonStyle="layered"
|
||||
headingFontWeight="light"
|
||||
>
|
||||
<div id="nav" data-section="nav">
|
||||
<NavbarStyleFullscreen
|
||||
navItems={navItems}
|
||||
brandName="Karu Thompson"
|
||||
bottomLeftText="Crafted with intention"
|
||||
bottomRightText="Let's connect"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="connect" data-section="connect">
|
||||
<SocialProofOne
|
||||
title="Connect With Me"
|
||||
description="Let's explore ideas together. Reach out through any of these channels—I'd love to hear from you."
|
||||
textboxLayout="default"
|
||||
useInvertedBackground={false}
|
||||
names={["Calendly", "Substack", "X", "Email", "Newsletter"]}
|
||||
speed={40}
|
||||
showCard={true}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="contact-cta" data-section="contact-cta">
|
||||
<ContactCTA
|
||||
tag="Direct Channels"
|
||||
title="Get in touch"
|
||||
description="Whether you have a specific project, want to collaborate, or simply want to chat about ideas, here are the best ways to reach me."
|
||||
background={{ variant: "plain" }}
|
||||
buttons={[
|
||||
{ text: "Schedule on Calendly", href: "https://calendly.com/karu-navolab/growth-engine-demo-navo-lab" },
|
||||
{ text: "Send an Email", href: "mailto:hello@example.com" },
|
||||
]}
|
||||
buttonAnimation="blur-reveal"
|
||||
useInvertedBackground={true}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="footer" data-section="footer">
|
||||
<FooterBaseReveal
|
||||
columns={footerColumns}
|
||||
copyrightText="© 2025 Karu Thompson. Crafted with intention and creative vision."
|
||||
/>
|
||||
</div>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
170
src/app/explore/page.tsx
Normal file
170
src/app/explore/page.tsx
Normal file
@@ -0,0 +1,170 @@
|
||||
"use client";
|
||||
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import NavbarStyleFullscreen from "@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen";
|
||||
import ContactCTA from "@/components/sections/contact/ContactCTA";
|
||||
import FooterBaseReveal from "@/components/sections/footer/FooterBaseReveal";
|
||||
|
||||
export default function ExplorePage() {
|
||||
const navItems = [
|
||||
{ name: "Home", id: "/" },
|
||||
{ name: "Explore My Works", id: "/explore" },
|
||||
{ name: "Vision", id: "/about" },
|
||||
{ name: "Connect", id: "/connect" },
|
||||
{ name: "Thoughts", id: "/thoughts" },
|
||||
];
|
||||
|
||||
const footerColumns = [
|
||||
{
|
||||
title: "Navigation", items: [
|
||||
{ label: "Home", href: "/" },
|
||||
{ label: "Explore My Works", href: "/explore" },
|
||||
{ label: "Vision", href: "/about" },
|
||||
{ label: "Contact", href: "/contact" },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Connect", items: [
|
||||
{ label: "Calendly", href: "https://calendly.com/karu-navolab/growth-engine-demo-navo-lab" },
|
||||
{ label: "Substack", href: "https://substack.com/@karuthompson" },
|
||||
{ label: "X", href: "https://x.com/KaruThompson" },
|
||||
{ label: "Email", href: "mailto:hello@example.com" },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Resources", items: [
|
||||
{ label: "Newsletter", href: "#" },
|
||||
{ label: "Thoughts", href: "/thoughts" },
|
||||
{ label: "Privacy", href: "#" },
|
||||
{ label: "Terms", href: "#" },
|
||||
],
|
||||
},
|
||||
];
|
||||
|
||||
return (
|
||||
<ThemeProvider
|
||||
defaultButtonVariant="elastic-effect"
|
||||
defaultTextAnimation="background-highlight"
|
||||
borderRadius="pill"
|
||||
contentWidth="smallMedium"
|
||||
sizing="largeSmallSizeMediumTitles"
|
||||
background="floatingGradient"
|
||||
cardStyle="layered-gradient"
|
||||
primaryButtonStyle="radial-glow"
|
||||
secondaryButtonStyle="layered"
|
||||
headingFontWeight="light"
|
||||
>
|
||||
<div id="nav" data-section="nav">
|
||||
<NavbarStyleFullscreen
|
||||
navItems={navItems}
|
||||
brandName="Karu Thompson"
|
||||
bottomLeftText="Crafted with intention"
|
||||
bottomRightText="Let's connect"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="explore-content" data-section="explore-content" className="w-content-width mx-auto py-20 px-10">
|
||||
<h1 className="text-5xl font-bold mb-12">Explore My Works</h1>
|
||||
|
||||
<div className="space-y-16">
|
||||
{/* Violin Study and Performance */}
|
||||
<section className="mb-16">
|
||||
<h2 className="text-4xl font-bold mb-6"><i>Violin Study and Performance</i></h2>
|
||||
<p className="text-lg leading-relaxed mb-4">
|
||||
Music has always been a medium for <i>intentional expression</i>. My journey with the violin represents a commitment to mastery through disciplined practice and artistic exploration. Each performance is an opportunity to communicate emotion and technical precision simultaneously.
|
||||
</p>
|
||||
<p className="text-lg leading-relaxed">
|
||||
From classical compositions to contemporary interpretations, I explore how the violin can bridge <i>tradition and innovation</i>. The study of music has deepened my understanding of aesthetic sophistication and the power of <i>carefully crafted narratives</i>.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
{/* Documentary Feature Film */}
|
||||
<section className="mb-16">
|
||||
<h2 className="text-4xl font-bold mb-6"><i>Documentary Feature: The Story of My Grandfather</i></h2>
|
||||
<div className="grid grid-cols-1 md:grid-cols-2 gap-8 mb-6">
|
||||
<div>
|
||||
<img
|
||||
src="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AP5BwcOCEdbUvGXGzmfDl4faxC/uploaded-1772766033287-95se7gjl.png"
|
||||
alt="Documentary scene"
|
||||
className="rounded-lg w-full"
|
||||
/>
|
||||
</div>
|
||||
<div>
|
||||
<img
|
||||
src="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AP5BwcOCEdbUvGXGzmfDl4faxC/uploaded-1772766033287-nv9gqz8q.png"
|
||||
alt="Documentary scene"
|
||||
className="rounded-lg w-full"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<img
|
||||
src="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AP5BwcOCEdbUvGXGzmfDl4faxC/uploaded-1772766033287-4nupb9ia.png"
|
||||
alt="Documentary scene"
|
||||
className="rounded-lg w-full mb-6"
|
||||
/>
|
||||
<p className="text-lg leading-relaxed mb-4">
|
||||
This documentary explores the life and legacy of my grandfather, capturing <i>intergenerational wisdom</i> and the values that shaped my creative vision. Through intimate interviews and archival footage, the film presents a <i>thoughtfully crafted narrative</i> about heritage, resilience, and the power of storytelling.
|
||||
</p>
|
||||
<p className="text-lg leading-relaxed">
|
||||
The project demonstrates how <i>visual storytelling</i> can preserve family history while examining broader themes of cultural continuity and personal identity. Every frame was intentionally composed to reflect the aesthetic principles that guide all my work.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
{/* Navo Growth Engine */}
|
||||
<section className="mb-16">
|
||||
<h2 className="text-4xl font-bold mb-6"><i>Navo Growth Engine</i></h2>
|
||||
<p className="text-lg leading-relaxed mb-4">
|
||||
Navo represents my exploration of <i>strategic business development</i> and growth optimization. The platform combines data-driven insights with <i>intentional design</i> to help businesses scale with clarity and purpose.
|
||||
</p>
|
||||
<p className="text-lg leading-relaxed mb-4">
|
||||
As the creator of Navo, I've built a system that bridges the gap between <i>analytical rigor</i> and <i>creative vision</i>. The growth engine framework has been applied to multiple ventures, demonstrating how strategic thinking and aesthetic sophistication can coexist.
|
||||
</p>
|
||||
<div className="my-6">
|
||||
<p className="font-semibold mb-2">Learn more about Navo:</p>
|
||||
<ul className="space-y-2">
|
||||
<li><a href="https://navo.example.com" target="_blank" rel="noopener noreferrer" className="text-primary-cta hover:underline">Navo Official Website →</a></li>
|
||||
<li><a href="https://navo.example.com/business" target="_blank" rel="noopener noreferrer" className="text-primary-cta hover:underline">Business Portfolio →</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
{/* Self-Taught vs Stanford */}
|
||||
<section className="mb-16">
|
||||
<h2 className="text-4xl font-bold mb-6"><i>Self-Taught vs Stanford: My College-Skipping Journey</i></h2>
|
||||
<p className="text-lg leading-relaxed mb-4">
|
||||
I chose an unconventional path by skipping traditional college to pursue <i>self-directed learning</i> and entrepreneurial ventures. This decision was rooted in the belief that <i>intentional education</i> extends beyond institutional frameworks.
|
||||
</p>
|
||||
<p className="text-lg leading-relaxed mb-4">
|
||||
Through self-study, mentorship, and real-world projects, I've developed expertise in design, business strategy, and creative direction. This journey demonstrates how <i>disciplined self-education</i> can compete with—and sometimes surpass—traditional academic paths when paired with genuine curiosity and commitment.
|
||||
</p>
|
||||
<p className="text-lg leading-relaxed">
|
||||
The contrast between <i>Stanford's institutional structure</i> and my <i>self-determined path</i> reveals fundamental truths about learning: mastery requires intention, accountability, and the courage to forge your own direction. Both paths have merit; I chose the one that aligned with my vision.
|
||||
</p>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="contact-cta" data-section="contact-cta">
|
||||
<ContactCTA
|
||||
tag="Interested?"
|
||||
title="Let's discuss these projects further"
|
||||
description="I'd love to share more details about any of these works or explore potential collaborations."
|
||||
background={{ variant: "plain" }}
|
||||
buttons={[
|
||||
{ text: "Schedule a Call", href: "https://calendly.com/karu-navolab/growth-engine-demo-navo-lab" },
|
||||
{ text: "Back to Home", href: "/" },
|
||||
]}
|
||||
buttonAnimation="blur-reveal"
|
||||
useInvertedBackground={true}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="footer" data-section="footer">
|
||||
<FooterBaseReveal
|
||||
columns={footerColumns}
|
||||
copyrightText="© 2025 Karu Thompson. Crafted with intention and creative vision."
|
||||
/>
|
||||
</div>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
@@ -10,7 +10,7 @@ const crimsonText = Crimson_Text({
|
||||
});
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: "Building Ideas Into Reality | Creative Portfolio", description: "A collection of projects, thoughts, and creative vision. Explore work across design, digital experience, and strategic direction.", keywords: "portfolio, creative design, digital experience, brand strategy, visual storytelling", metadataBase: new URL("https://portfolio.example.com"),
|
||||
title: "Karu Thompson | Building Ideas Into Reality | Creative Portfolio", description: "A collection of projects, thoughts, and creative vision. Explore work across design, digital experience, and strategic direction.", keywords: "portfolio, creative design, digital experience, brand strategy, visual storytelling", metadataBase: new URL("https://portfolio.example.com"),
|
||||
alternates: {
|
||||
canonical: "https://portfolio.example.com"
|
||||
},
|
||||
|
||||
@@ -9,21 +9,23 @@ import ProductCardTwo from "@/components/sections/product/ProductCardTwo";
|
||||
import SocialProofOne from "@/components/sections/socialProof/SocialProofOne";
|
||||
import ContactCTA from "@/components/sections/contact/ContactCTA";
|
||||
import FooterBaseReveal from "@/components/sections/footer/FooterBaseReveal";
|
||||
import ContactForm from "@/components/form/ContactForm";
|
||||
import { Twitter } from "lucide-react";
|
||||
|
||||
export default function HomePage() {
|
||||
const navItems = [
|
||||
{ name: "Home", id: "/" },
|
||||
{ name: "Projects", id: "/projects" },
|
||||
{ name: "Explore My Works", id: "/explore" },
|
||||
{ name: "Vision", id: "/about" },
|
||||
{ name: "Connect", id: "/connect" },
|
||||
{ name: "Writing", id: "/writing" },
|
||||
{ name: "Thoughts", id: "/thoughts" },
|
||||
];
|
||||
|
||||
const footerColumns = [
|
||||
{
|
||||
title: "Navigation", items: [
|
||||
{ label: "Home", href: "/" },
|
||||
{ label: "Projects", href: "/projects" },
|
||||
{ label: "Explore My Works", href: "/explore" },
|
||||
{ label: "Vision", href: "/about" },
|
||||
{ label: "Contact", href: "/contact" },
|
||||
],
|
||||
@@ -39,7 +41,7 @@ export default function HomePage() {
|
||||
{
|
||||
title: "Resources", items: [
|
||||
{ label: "Newsletter", href: "#" },
|
||||
{ label: "Blog", href: "/writing" },
|
||||
{ label: "Thoughts", href: "/thoughts" },
|
||||
{ label: "Privacy", href: "#" },
|
||||
{ label: "Terms", href: "#" },
|
||||
],
|
||||
@@ -62,7 +64,7 @@ export default function HomePage() {
|
||||
<div id="nav" data-section="nav">
|
||||
<NavbarStyleFullscreen
|
||||
navItems={navItems}
|
||||
brandName="Portfolio"
|
||||
brandName="Karu Thompson"
|
||||
bottomLeftText="Crafted with intention"
|
||||
bottomRightText="Let's connect"
|
||||
/>
|
||||
@@ -81,7 +83,7 @@ export default function HomePage() {
|
||||
},
|
||||
]}
|
||||
buttons={[
|
||||
{ text: "Explore My Work", href: "/projects" },
|
||||
{ text: "Explore My Work", href: "/explore" },
|
||||
{ text: "Subscribe", href: "#" },
|
||||
{ text: "Calendly", href: "https://calendly.com/karu-navolab/growth-engine-demo-navo-lab" },
|
||||
{ text: "Substack", href: "https://substack.com/@karuthompson" },
|
||||
@@ -98,7 +100,7 @@ export default function HomePage() {
|
||||
<TextSplitAbout
|
||||
title="About My Vision"
|
||||
description={[
|
||||
"I believe in intentional design that bridges creativity and purpose. Every project is an opportunity to explore the intersection of aesthetic sophistication and clear communication.", "My work draws inspiration from film aesthetics, vintage typography, and minimalist principles. I create digital experiences that feel thoughtfully crafted, inviting audiences to engage deeply with ideas and stories."
|
||||
"I believe in <i>intentional design</i> that bridges creativity and purpose. Every project is an opportunity to explore the intersection of <i>aesthetic sophistication</i> and clear communication.", "My work draws inspiration from <i>film aesthetics</i>, <i>vintage typography</i>, and minimalist principles. I create digital experiences that feel thoughtfully crafted, inviting audiences to engage deeply with ideas and stories."
|
||||
]}
|
||||
useInvertedBackground={true}
|
||||
showBorder={true}
|
||||
@@ -132,7 +134,23 @@ export default function HomePage() {
|
||||
carouselMode="buttons"
|
||||
tag="Portfolio Showcase"
|
||||
tagAnimation="blur-reveal"
|
||||
buttons={[{ text: "View All Projects", href: "/projects" }]}
|
||||
buttons={[{ text: "View All Projects", href: "/explore" }]}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="email-signup" data-section="email-signup">
|
||||
<ContactForm
|
||||
title="Stay Connected"
|
||||
description="Subscribe to my Substack for insights on creative vision, design philosophy, and intentional storytelling."
|
||||
tag="Newsletter"
|
||||
tagIcon={Twitter}
|
||||
inputPlaceholder="Enter your email"
|
||||
buttonText="Subscribe"
|
||||
termsText="We respect your privacy. Unsubscribe anytime."
|
||||
onSubmit={(email) => {
|
||||
window.open(`https://substack.com/@karuthompson`, '_blank');
|
||||
}}
|
||||
centered={true}
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -155,7 +173,7 @@ export default function HomePage() {
|
||||
description="Whether you're exploring new creative directions, developing a project, or simply want to discuss ideas, I'd love to hear from you."
|
||||
background={{ variant: "plain" }}
|
||||
buttons={[
|
||||
{ text: "Explore My Writing", href: "#" },
|
||||
{ text: "Explore My Thoughts", href: "/thoughts" },
|
||||
{ text: "Start a Conversation", href: "/contact" },
|
||||
]}
|
||||
buttonAnimation="blur-reveal"
|
||||
@@ -166,7 +184,7 @@ export default function HomePage() {
|
||||
<div id="footer" data-section="footer">
|
||||
<FooterBaseReveal
|
||||
columns={footerColumns}
|
||||
copyrightText="© 2025 Portfolio. Crafted with intention and creative vision."
|
||||
copyrightText="© 2025 Karu Thompson. Crafted with intention and creative vision."
|
||||
/>
|
||||
</div>
|
||||
</ThemeProvider>
|
||||
|
||||
164
src/app/thoughts/page.tsx
Normal file
164
src/app/thoughts/page.tsx
Normal file
@@ -0,0 +1,164 @@
|
||||
"use client";
|
||||
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import NavbarStyleFullscreen from "@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen";
|
||||
import ContactCTA from "@/components/sections/contact/ContactCTA";
|
||||
import FooterBaseReveal from "@/components/sections/footer/FooterBaseReveal";
|
||||
|
||||
export default function ThoughtsPage() {
|
||||
const navItems = [
|
||||
{ name: "Home", id: "/" },
|
||||
{ name: "Explore My Works", id: "/explore" },
|
||||
{ name: "Vision", id: "/about" },
|
||||
{ name: "Connect", id: "/connect" },
|
||||
{ name: "Thoughts", id: "/thoughts" },
|
||||
];
|
||||
|
||||
const footerColumns = [
|
||||
{
|
||||
title: "Navigation", items: [
|
||||
{ label: "Home", href: "/" },
|
||||
{ label: "Explore My Works", href: "/explore" },
|
||||
{ label: "Vision", href: "/about" },
|
||||
{ label: "Contact", href: "/contact" },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Connect", items: [
|
||||
{ label: "Calendly", href: "https://calendly.com/karu-navolab/growth-engine-demo-navo-lab" },
|
||||
{ label: "Substack", href: "https://substack.com/@karuthompson" },
|
||||
{ label: "X", href: "https://x.com/KaruThompson" },
|
||||
{ label: "Email", href: "mailto:hello@example.com" },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Resources", items: [
|
||||
{ label: "Newsletter", href: "#" },
|
||||
{ label: "Thoughts", href: "/thoughts" },
|
||||
{ label: "Privacy", href: "#" },
|
||||
{ label: "Terms", href: "#" },
|
||||
],
|
||||
},
|
||||
];
|
||||
|
||||
return (
|
||||
<ThemeProvider
|
||||
defaultButtonVariant="elastic-effect"
|
||||
defaultTextAnimation="background-highlight"
|
||||
borderRadius="pill"
|
||||
contentWidth="smallMedium"
|
||||
sizing="largeSmallSizeMediumTitles"
|
||||
background="floatingGradient"
|
||||
cardStyle="layered-gradient"
|
||||
primaryButtonStyle="radial-glow"
|
||||
secondaryButtonStyle="layered"
|
||||
headingFontWeight="light"
|
||||
>
|
||||
<div id="nav" data-section="nav">
|
||||
<NavbarStyleFullscreen
|
||||
navItems={navItems}
|
||||
brandName="Karu Thompson"
|
||||
bottomLeftText="Crafted with intention"
|
||||
bottomRightText="Let's connect"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="thoughts-content" data-section="thoughts-content" className="w-content-width mx-auto py-20 px-10">
|
||||
<h1 className="text-5xl font-bold mb-12">Thoughts & Reflections</h1>
|
||||
|
||||
<div className="space-y-12">
|
||||
<div className="mb-12">
|
||||
<h2 className="text-3xl font-bold mb-4"><i>On Intentional Design</i></h2>
|
||||
<p className="text-lg leading-relaxed text-foreground/80">
|
||||
Design is not merely about aesthetics; it's about <i>purposeful communication</i>. Every choice—from typography to spacing to color—should serve a deliberate intention. In a world of infinite possibilities, <i>constraints breed creativity</i>. The most compelling work emerges when creative vision is paired with strategic thinking.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div className="mb-12">
|
||||
<h2 className="text-3xl font-bold mb-4"><i>The Art of Curation</i></h2>
|
||||
<p className="text-lg leading-relaxed text-foreground/80">
|
||||
In an age of abundance, <i>thoughtful curation</i> has become essential. Whether selecting projects to showcase, ideas to pursue, or collaborators to work with, the ability to discern quality from noise is invaluable. <i>Less is more</i>—quality over quantity creates space for meaningful engagement.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div className="mb-12">
|
||||
<h2 className="text-3xl font-bold mb-4"><i>Learning Beyond Institutions</i></h2>
|
||||
<p className="text-lg leading-relaxed text-foreground/80">
|
||||
Traditional education has value, but so does <i>self-directed mastery</i>. The most fulfilling learning often happens when you pursue questions that genuinely interest you, rather than following a predetermined curriculum. <i>Curiosity</i> is the ultimate teacher, and discipline is the bridge between interest and expertise.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div className="mb-12">
|
||||
<h2 className="text-3xl font-bold mb-4"><i>On Storytelling</i></h2>
|
||||
<p className="text-lg leading-relaxed text-foreground/80">
|
||||
Stories shape how we understand the world. Whether through film, design, music, or writing, <i>thoughtfully crafted narratives</i> have the power to transform perspectives and inspire action. The most effective stories are those that reveal <i>universal truths</i> through specific, authentic details.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div className="mb-12">
|
||||
<h2 className="text-3xl font-bold mb-4"><i>Building With Purpose</i></h2>
|
||||
<p className="text-lg leading-relaxed text-foreground/80">
|
||||
Every project I undertake—whether it's a business, a creative work, or a platform—starts with a clear <i>sense of purpose</i>. What problem does it solve? Who does it serve? How does it contribute to something larger than itself? <i>Intention precedes execution</i>. When you know your why, the how becomes clear.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div className="mb-12">
|
||||
<h2 className="text-3xl font-bold mb-4"><i>Bridging Disciplines</i></h2>
|
||||
<p className="text-lg leading-relaxed text-foreground/80">
|
||||
Some of the most innovative work happens at the <i>intersection of different fields</i>. Design informs business strategy. Music teaches rhythm and structure. Film composition reveals how to guide attention. By drawing from multiple disciplines, we create richer, more nuanced solutions.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div className="mb-12">
|
||||
<h2 className="text-3xl font-bold mb-4"><i>The Power of Vulnerability</i></h2>
|
||||
<p className="text-lg leading-relaxed text-foreground/80">
|
||||
Sharing unfinished work, admitting uncertainty, and being <i>genuinely present</i> with others creates deeper connections than polished perfection ever could. <i>Vulnerability is not weakness</i>; it's the foundation of authentic communication and meaningful collaboration.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div className="mb-12">
|
||||
<h2 className="text-3xl font-bold mb-4"><i>On Growth and Evolution</i></h2>
|
||||
<p className="text-lg leading-relaxed text-foreground/80">
|
||||
The work you created a year ago doesn't define you forever. <i>Growth requires letting go</i>—of old ideas, outdated approaches, and yesterday's certainties. The most vibrant creative practice is one that continuously evolves while maintaining core principles. <i>Consistency of vision, flexibility of method.</i>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div className="mb-12">
|
||||
<h2 className="text-3xl font-bold mb-4"><i>Why This Matters</i></h2>
|
||||
<p className="text-lg leading-relaxed text-foreground/80">
|
||||
These reflections emerge from lived experience—from failures and successes, from questioning conventions and building alternatives, from studying film and music and design, and from countless conversations with thoughtful people. They're not prescriptions but rather <i>invitations to think differently</i> about creativity, learning, and purpose.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div className="mt-16 pt-12 border-t border-accent">
|
||||
<p className="text-lg text-foreground/80">
|
||||
For longer-form writing and regular reflections, subscribe to my <a href="https://substack.com/@karuthompson" target="_blank" rel="noopener noreferrer" className="text-primary-cta hover:underline"><i>Substack newsletter</i></a>.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="contact-cta" data-section="contact-cta">
|
||||
<ContactCTA
|
||||
tag="Let's Connect"
|
||||
title="Share your thoughts"
|
||||
description="I'd love to hear your perspective on these ideas or discuss challenges you're facing. Reach out anytime."
|
||||
background={{ variant: "plain" }}
|
||||
buttons={[
|
||||
{ text: "Send Me a Message", href: "mailto:hello@example.com" },
|
||||
{ text: "Back to Home", href: "/" },
|
||||
]}
|
||||
buttonAnimation="blur-reveal"
|
||||
useInvertedBackground={true}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="footer" data-section="footer">
|
||||
<FooterBaseReveal
|
||||
columns={footerColumns}
|
||||
copyrightText="© 2025 Karu Thompson. Crafted with intention and creative vision."
|
||||
/>
|
||||
</div>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user