Compare commits
13 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| fafeb0ec7a | |||
| bc91b47822 | |||
| cab0df2390 | |||
| 4d2e33c122 | |||
| 38b5788f07 | |||
| 9620d9d66a | |||
| 05d820609a | |||
| c86fb4ef82 | |||
| 4636f764b0 | |||
| 81b2de936c | |||
| b334a30866 | |||
| 05a8697997 | |||
| 700bf7e104 |
@@ -4,13 +4,13 @@
|
|||||||
/* Base units */
|
/* Base units */
|
||||||
/* --vw is set by ThemeProvider */
|
/* --vw is set by ThemeProvider */
|
||||||
|
|
||||||
--background: #fafafa;;
|
--background: #ffffff;
|
||||||
--card: #f4f4f5;;
|
--card: #fafafa;
|
||||||
--foreground: #27272a;;
|
--foreground: #000000;
|
||||||
--primary-cta: #3f3f46;;
|
--primary-cta: #ffcc00;
|
||||||
--secondary-cta: #ffffff;;
|
--secondary-cta: #ffffff;
|
||||||
--accent: #facc15;;
|
--accent: #e5e5e5;
|
||||||
--background-accent: #eab308;;
|
--background-accent: #f5f5f5;
|
||||||
|
|
||||||
/* text sizing - set by ThemeProvider */
|
/* text sizing - set by ThemeProvider */
|
||||||
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);
|
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
import type { Metadata } from "next";
|
import type { Metadata } from "next";
|
||||||
import { Inter_Tight } from "next/font/google";
|
import { IBM_Plex_Sans } from "next/font/google";
|
||||||
import "./globals.css";
|
import "./globals.css";
|
||||||
import { ServiceWrapper } from "@/components/ServiceWrapper";
|
import { ServiceWrapper } from "@/components/ServiceWrapper";
|
||||||
import Tag from "@/tag/Tag";
|
import Tag from "@/tag/Tag";
|
||||||
|
|
||||||
const interTight = Inter_Tight({
|
const ibmPlexSans = IBM_Plex_Sans({
|
||||||
variable: "--font-inter-tight",
|
variable: "--font-ibm-plex-sans",
|
||||||
subsets: ["latin"],
|
subsets: ["latin"],
|
||||||
weight: ["100", "200", "300", "400", "500", "600", "700", "800", "900"],
|
weight: ["100", "200", "300", "400", "500", "600", "700"],
|
||||||
});
|
});
|
||||||
|
|
||||||
export const metadata: Metadata = {
|
export const metadata: Metadata = {
|
||||||
@@ -47,7 +47,7 @@ export default function RootLayout({
|
|||||||
<html lang="en" suppressHydrationWarning>
|
<html lang="en" suppressHydrationWarning>
|
||||||
<ServiceWrapper>
|
<ServiceWrapper>
|
||||||
<body
|
<body
|
||||||
className={`${interTight.variable} antialiased`}
|
className={`${ibmPlexSans.variable} antialiased`}
|
||||||
>
|
>
|
||||||
<Tag />
|
<Tag />
|
||||||
{children}
|
{children}
|
||||||
|
|||||||
206
src/app/page.tsx
206
src/app/page.tsx
@@ -1,143 +1,149 @@
|
|||||||
"use client"
|
"use client";
|
||||||
|
|
||||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
import NavbarStyleMinimal from '@/components/navbar/NavbarStyleMinimal';
|
import NavbarStyleCentered from "@/components/navbar/NavbarStyleCentered/NavbarStyleCentered";
|
||||||
import HeroBillboardMetrics from '@/components/sections/hero/HeroBillboardMetrics';
|
import HeroBillboard from "@/components/sections/hero/HeroBillboard";
|
||||||
import ProductCardSix from '@/components/sections/product/ProductCardSix';
|
import ProductCardOne from "@/components/sections/product/ProductCardOne";
|
||||||
import TextAbout from '@/components/sections/about/TextAbout';
|
import MediaSplitTabsAbout from "@/components/sections/about/MediaSplitTabsAbout";
|
||||||
import FeatureCardEight from '@/components/sections/feature/FeatureCardEight';
|
import MetricCardEleven from "@/components/sections/metrics/MetricCardEleven";
|
||||||
import ContactSplit from '@/components/sections/contact/ContactSplit';
|
import ContactSplit from "@/components/sections/contact/ContactSplit";
|
||||||
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
|
import FooterSocial from "@/components/sections/footer/FooterSocial";
|
||||||
|
|
||||||
export default function LandingPage() {
|
export default function LandingPage() {
|
||||||
return (
|
return (
|
||||||
<ThemeProvider
|
<ThemeProvider
|
||||||
defaultButtonVariant="shift-hover"
|
defaultButtonVariant="text-stagger"
|
||||||
defaultTextAnimation="reveal-blur"
|
defaultTextAnimation="entrance-slide"
|
||||||
borderRadius="soft"
|
borderRadius="rounded"
|
||||||
contentWidth="compact"
|
contentWidth="medium"
|
||||||
sizing="mediumSizeLargeTitles"
|
sizing="medium"
|
||||||
background="noiseDiagonalGradient"
|
background="circleGradient"
|
||||||
cardStyle="solid"
|
cardStyle="glass-elevated"
|
||||||
primaryButtonStyle="diagonal-gradient"
|
primaryButtonStyle="gradient"
|
||||||
secondaryButtonStyle="layered"
|
secondaryButtonStyle="glass"
|
||||||
headingFontWeight="semibold"
|
headingFontWeight="normal"
|
||||||
>
|
>
|
||||||
<div id="nav" data-section="nav">
|
<div id="nav" data-section="nav">
|
||||||
<NavbarStyleMinimal
|
<NavbarStyleCentered
|
||||||
|
navItems={[
|
||||||
|
{ name: "Gallery", id: "gallery" },
|
||||||
|
{ name: "About", id: "about" },
|
||||||
|
{ name: "Skills", id: "skills" },
|
||||||
|
{ name: "Contact", id: "contact" },
|
||||||
|
]}
|
||||||
|
button={{ text: "Get in Touch", href: "contact" }}
|
||||||
brandName="Ben"
|
brandName="Ben"
|
||||||
button={{
|
|
||||||
text: "Get in Touch",
|
|
||||||
href: "#contact"
|
|
||||||
}}
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="hero" data-section="hero">
|
<div id="hero" data-section="hero">
|
||||||
<HeroBillboardMetrics
|
<HeroBillboard
|
||||||
title="3D Artist & Blender Specialist"
|
title="3D Artist & Blender Specialist"
|
||||||
description="Crafting immersive digital experiences through advanced 3D modeling, rendering, and animation. Transforming concepts into stunning visual reality."
|
description="Crafting immersive digital experiences through advanced 3D modeling, rendering, and animation. Transforming concepts into stunning visual reality."
|
||||||
tag="3D Creative"
|
tag="3D Creative"
|
||||||
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888719283-nfmcx166.jpg"
|
|
||||||
imageAlt="Hero 3D render"
|
|
||||||
frameStyle="card"
|
|
||||||
metricsLabel="Trusted by studios and brands worldwide"
|
|
||||||
metrics={[
|
|
||||||
{
|
|
||||||
id: "1",
|
|
||||||
value: "8+",
|
|
||||||
label: "Years in 3D"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: "2",
|
|
||||||
value: "150+",
|
|
||||||
label: "Projects Completed"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: "3",
|
|
||||||
value: "50+",
|
|
||||||
label: "Happy Clients"
|
|
||||||
}
|
|
||||||
]}
|
|
||||||
buttons={[
|
buttons={[
|
||||||
{
|
{ text: "View Portfolio", href: "gallery" },
|
||||||
text: "View Portfolio",
|
{ text: "Get Started", href: "contact" },
|
||||||
href: "#gallery"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: "Learn More",
|
|
||||||
href: "#about"
|
|
||||||
}
|
|
||||||
]}
|
]}
|
||||||
|
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888719283-nfmcx166.jpg"
|
||||||
|
imageAlt="3D Artist Portfolio"
|
||||||
|
frameStyle="card"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="gallery" data-section="gallery">
|
<div id="gallery" data-section="gallery">
|
||||||
<ProductCardSix
|
<ProductCardOne
|
||||||
title="Featured Work"
|
title="Featured Work"
|
||||||
description="Explore my latest 3D renders and creative projects. Each piece showcases technical expertise and artistic vision."
|
description="Explore my latest 3D renders and creative projects. Each piece showcases technical expertise and artistic vision."
|
||||||
products={[
|
products={[
|
||||||
{
|
{
|
||||||
id: "1",
|
id: "1",
|
||||||
name: "Character Modeling",
|
name: "Character Modeling",
|
||||||
price: "Portfolio",
|
price: "Advanced",
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888720392-ehsyl2xj.jpg",
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888720392-ehsyl2xj.jpg",
|
||||||
imageAlt: "3D character model"
|
imageAlt: "3D character model",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "2",
|
id: "2",
|
||||||
name: "Visual Effects",
|
name: "Visual Effects",
|
||||||
price: "Portfolio",
|
price: "Dynamic",
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888721289-rze89n00.jpg",
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888721289-rze89n00.jpg",
|
||||||
imageAlt: "3D animation and effects"
|
imageAlt: "3D animation and effects",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "3",
|
id: "3",
|
||||||
name: "Product Rendering",
|
name: "Product Rendering",
|
||||||
price: "Portfolio",
|
price: "Photorealistic",
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888722652-paaoqfev.jpg",
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888722652-paaoqfev.jpg",
|
||||||
imageAlt: "3D product render"
|
imageAlt: "3D product render",
|
||||||
}
|
},
|
||||||
]}
|
]}
|
||||||
gridVariant="uniform-all-items-equal"
|
|
||||||
animationType="slide-up"
|
|
||||||
textboxLayout="default"
|
textboxLayout="default"
|
||||||
|
animationType="slide-up"
|
||||||
|
gridVariant="three-columns-all-equal-width"
|
||||||
useInvertedBackground="noInvert"
|
useInvertedBackground="noInvert"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="about" data-section="about">
|
<div id="about" data-section="about">
|
||||||
<TextAbout
|
<MediaSplitTabsAbout
|
||||||
title="I bring imagination to life through cutting-edge 3D technology and creative storytelling"
|
title="I bring imagination to life through cutting-edge 3D technology and creative storytelling"
|
||||||
|
tabs={[
|
||||||
|
{
|
||||||
|
id: "vision",
|
||||||
|
label: "Vision",
|
||||||
|
description: "Bringing concepts to life through innovative 3D visualization and artistic storytelling.",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "expertise",
|
||||||
|
label: "Expertise",
|
||||||
|
description: "Specialized in Blender, character modeling, photorealistic rendering, and animation pipelines.",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "approach",
|
||||||
|
label: "Approach",
|
||||||
|
description: "Combining technical excellence with creative vision to deliver stunning visual results.",
|
||||||
|
},
|
||||||
|
]}
|
||||||
|
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888725581-tp75ftz7.jpg"
|
||||||
|
imageAlt="About section"
|
||||||
|
imagePosition="right"
|
||||||
useInvertedBackground="noInvert"
|
useInvertedBackground="noInvert"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="skills" data-section="skills">
|
<div id="skills" data-section="skills">
|
||||||
<FeatureCardEight
|
<MetricCardEleven
|
||||||
title="Core Competencies"
|
title="Core Competencies"
|
||||||
description="Specialized expertise in 3D creation and digital art production"
|
description="Specialized expertise in 3D creation and digital art production"
|
||||||
features={[
|
metrics={[
|
||||||
{
|
{
|
||||||
id: 1,
|
id: "1",
|
||||||
title: "3D Modeling",
|
value: "8+",
|
||||||
description: "Advanced character and environment modeling using Blender and industry-standard techniques",
|
title: "Years in 3D",
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888720392-ehsyl2xj.jpg"
|
description: "Professional experience in 3D creation",
|
||||||
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888720392-ehsyl2xj.jpg",
|
||||||
|
imageAlt: "3D Modeling",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 2,
|
id: "2",
|
||||||
title: "Rendering & Shading",
|
value: "150+",
|
||||||
description: "Photorealistic rendering with Cycles and specialized material development",
|
title: "Projects Completed",
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888721289-rze89n00.jpg"
|
description: "High-quality deliverables across industries",
|
||||||
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888721289-rze89n00.jpg",
|
||||||
|
imageAlt: "Rendering & Shading",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 3,
|
id: "3",
|
||||||
title: "Animation",
|
value: "50+",
|
||||||
description: "Smooth character rigging, motion capture, and keyframe animation",
|
title: "Happy Clients",
|
||||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888722652-paaoqfev.jpg"
|
description: "Satisfied clients worldwide",
|
||||||
}
|
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888722652-paaoqfev.jpg",
|
||||||
|
imageAlt: "Animation",
|
||||||
|
},
|
||||||
]}
|
]}
|
||||||
textboxLayout="default"
|
textboxLayout="default"
|
||||||
|
animationType="slide-up"
|
||||||
useInvertedBackground="noInvert"
|
useInvertedBackground="noInvert"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -147,59 +153,41 @@ export default function LandingPage() {
|
|||||||
tag="Get Started"
|
tag="Get Started"
|
||||||
title="Ready to bring your vision to life?"
|
title="Ready to bring your vision to life?"
|
||||||
description="Interested in collaborating on your next 3D project? Reach out directly or subscribe for updates on my latest work."
|
description="Interested in collaborating on your next 3D project? Reach out directly or subscribe for updates on my latest work."
|
||||||
|
useInvertedBackground="noInvert"
|
||||||
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888725581-tp75ftz7.jpg"
|
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766888725581-tp75ftz7.jpg"
|
||||||
imageAlt="Contact section"
|
imageAlt="Contact section"
|
||||||
mediaPosition="right"
|
mediaPosition="right"
|
||||||
inputPlaceholder="your@email.com"
|
inputPlaceholder="your@email.com"
|
||||||
buttonText="Subscribe"
|
buttonText="Subscribe"
|
||||||
termsText="We respect your privacy. Unsubscribe anytime."
|
termsText="We respect your privacy. Unsubscribe anytime."
|
||||||
useInvertedBackground="noInvert"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="footer" data-section="footer">
|
<div id="footer" data-section="footer">
|
||||||
<FooterBaseCard
|
<FooterSocial
|
||||||
logoText="Ben"
|
logoText="Ben"
|
||||||
columns={[
|
columns={[
|
||||||
{
|
{
|
||||||
title: "Work",
|
title: "Work",
|
||||||
items: [
|
items: [
|
||||||
{
|
{ label: "Portfolio", href: "gallery" },
|
||||||
label: "Portfolio",
|
{ label: "Services", href: "skills" },
|
||||||
href: "#gallery"
|
],
|
||||||
},
|
|
||||||
{
|
|
||||||
label: "Services",
|
|
||||||
href: "#skills"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "About",
|
title: "About",
|
||||||
items: [
|
items: [
|
||||||
{
|
{ label: "Bio", href: "about" },
|
||||||
label: "Bio",
|
{ label: "Contact", href: "contact" },
|
||||||
href: "#about"
|
],
|
||||||
},
|
|
||||||
{
|
|
||||||
label: "Contact",
|
|
||||||
href: "#contact"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Connect",
|
title: "Connect",
|
||||||
items: [
|
items: [
|
||||||
{
|
{ label: "Email", href: "mailto:ben@example.com" },
|
||||||
label: "Email",
|
{ label: "ArtStation", href: "https://artstation.com" },
|
||||||
href: "mailto:ben@example.com"
|
],
|
||||||
},
|
},
|
||||||
{
|
|
||||||
label: "ArtStation",
|
|
||||||
href: "#"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]}
|
]}
|
||||||
copyrightText="© 2025 Ben - 3D Artist & Blender Specialist"
|
copyrightText="© 2025 Ben - 3D Artist & Blender Specialist"
|
||||||
/>
|
/>
|
||||||
|
|||||||
Reference in New Issue
Block a user