Compare commits
32 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 25c3090f50 | |||
| cbf42372d9 | |||
| 3606fab604 | |||
| b83697c236 | |||
| d517233ecf | |||
| c4349f6d82 | |||
| 1ae2fd45a5 | |||
| 44938edcab | |||
| 965e177eba | |||
| a328c8ab5b | |||
| 2adf8812ff | |||
| 03789c0713 | |||
| 56de79167d | |||
| 589cbdc856 | |||
| efe9db1683 | |||
| 23b102ac73 | |||
| 0791e387ba | |||
| 27b87ddcc9 | |||
| 6df21d20f2 | |||
| 4f6ea92720 | |||
| ef81853402 | |||
| b00bdd2aa0 | |||
| 0ba1c6c0d9 | |||
| fe0d992f26 | |||
| 623576c75f | |||
| c642fbfee3 | |||
| ee7f816843 | |||
| abf0ccca5c | |||
| fa6376c40c | |||
| dd463a9243 | |||
| 9fe52dedb3 | |||
| 1df376c2e3 |
@@ -28,51 +28,56 @@ export default function BlogPage() {
|
|||||||
headingFontWeight="medium"
|
headingFontWeight="medium"
|
||||||
>
|
>
|
||||||
<ReactLenis root>
|
<ReactLenis root>
|
||||||
<NavbarLayoutFloatingInline
|
<div id="nav" data-section="nav">
|
||||||
navItems={[
|
<NavbarLayoutFloatingInline
|
||||||
{ name: "Home", id: "/" },
|
navItems={[
|
||||||
{ name: "About", id: "#about" },
|
{ name: "Home", id: "/" },
|
||||||
{ name: "Services", id: "#features-detailed" },
|
{ name: "About", id: "/#about" },
|
||||||
{ name: "Clients", id: "/#clients" },
|
{ name: "Services", id: "/#features-detailed" },
|
||||||
{ name: "Contact", id: "#contact" },
|
{ name: "Contact", id: "/#contact" },
|
||||||
]}
|
]}
|
||||||
brandName="Pro Studio"
|
brandName="Pro Studio"
|
||||||
button={{ text: "Get a Quote", href: "/#contact" }}
|
button={{ text: "Get a Quote", href: "/#contact" }}
|
||||||
className="bg-card/90 backdrop-blur-sm shadow-lg"
|
className="bg-card/90 backdrop-blur-sm shadow-lg"
|
||||||
navItemClassName="text-foreground hover:text-primary-cta transition-colors duration-300"
|
navItemClassName="text-foreground hover:text-primary-cta transition-colors duration-300"
|
||||||
buttonClassName="bg-primary-cta text-secondary-cta px-6 py-2 rounded-pill hover:bg-accent hover:text-primary-cta transition-all duration-300"
|
buttonClassName="bg-primary-cta text-secondary-cta px-6 py-2 rounded-pill hover:bg-accent hover:text-primary-cta transition-all duration-300"
|
||||||
buttonTextClassName="font-medium text-base"
|
buttonTextClassName="font-medium text-base"
|
||||||
/>
|
|
||||||
|
|
||||||
{isLoading ? (
|
|
||||||
<div className="w-content-width mx-auto py-20 text-center">
|
|
||||||
<p className="text-foreground">Loading posts...</p>
|
|
||||||
</div>
|
|
||||||
) : (
|
|
||||||
<BlogCardThree
|
|
||||||
blogs={posts}
|
|
||||||
title="Featured Articles"
|
|
||||||
description="Explore our latest insights"
|
|
||||||
animationType="slide-up"
|
|
||||||
textboxLayout="default"
|
|
||||||
useInvertedBackground={false}
|
|
||||||
/>
|
/>
|
||||||
)}
|
</div>
|
||||||
|
|
||||||
<FooterCard
|
<div id="blog" data-section="blog">
|
||||||
logoText="Pro Studio"
|
{isLoading ? (
|
||||||
copyrightText="© 2023 Pro Studio. All rights reserved."
|
<div className="w-content-width mx-auto py-20 text-center">
|
||||||
socialLinks={[
|
<p className="text-foreground">Loading posts...</p>
|
||||||
{ icon: Twitter, href: "https://twitter.com/prostudio", ariaLabel: "Twitter" },
|
</div>
|
||||||
{ icon: Linkedin, href: "https://linkedin.com/company/prostudio", ariaLabel: "LinkedIn" },
|
) : (
|
||||||
{ icon: Instagram, href: "https://instagram.com/prostudio", ariaLabel: "Instagram" },
|
<BlogCardThree
|
||||||
]}
|
blogs={posts}
|
||||||
className="py-16 md:py-24 bg-background-accent"
|
title="Featured Articles"
|
||||||
cardClassName="bg-card/70 backdrop-blur-md"
|
description="Explore our latest insights"
|
||||||
logoClassName="text-2xl font-bold text-foreground"
|
animationType="slide-up"
|
||||||
copyrightTextClassName="text-sm text-foreground/70"
|
textboxLayout="default"
|
||||||
socialIconClassName="text-foreground/80 hover:text-primary-cta transition-colors duration-300"
|
useInvertedBackground={false}
|
||||||
/>
|
/>
|
||||||
|
)}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="footer" data-section="footer">
|
||||||
|
<FooterCard
|
||||||
|
logoText="Pro Studio"
|
||||||
|
copyrightText="© 2023 Pro Studio. All rights reserved."
|
||||||
|
socialLinks={[
|
||||||
|
{ icon: Twitter, href: "https://twitter.com/prostudio", ariaLabel: "Twitter" },
|
||||||
|
{ icon: Linkedin, href: "https://linkedin.com/company/prostudio", ariaLabel: "LinkedIn" },
|
||||||
|
{ icon: Instagram, href: "https://instagram.com/prostudio", ariaLabel: "Instagram" },
|
||||||
|
]}
|
||||||
|
className="py-16 md:py-24 bg-background-accent"
|
||||||
|
cardClassName="bg-card/70 backdrop-blur-md"
|
||||||
|
logoClassName="text-2xl font-bold text-foreground"
|
||||||
|
copyrightTextClassName="text-sm text-foreground/70"
|
||||||
|
socialIconClassName="text-foreground/80 hover:text-primary-cta transition-colors duration-300"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
</ReactLenis>
|
</ReactLenis>
|
||||||
</ThemeProvider>
|
</ThemeProvider>
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -3,9 +3,6 @@ import { Mulish } 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";
|
||||||
import { Libre_Baskerville } from "next/font/google";
|
|
||||||
import { Inter } from "next/font/google";
|
|
||||||
import { Raleway } from "next/font/google";
|
|
||||||
|
|
||||||
const mulish = Mulish({
|
const mulish = Mulish({
|
||||||
variable: "--font-mulish", subsets: ["latin"],
|
variable: "--font-mulish", subsets: ["latin"],
|
||||||
@@ -27,21 +24,6 @@ export const metadata: Metadata = {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
const libreBaskerville = Libre_Baskerville({
|
|
||||||
variable: "--font-libre-baskerville",
|
|
||||||
subsets: ["latin"],
|
|
||||||
weight: ["400", "700"],
|
|
||||||
});
|
|
||||||
const inter = Inter({
|
|
||||||
variable: "--font-inter",
|
|
||||||
subsets: ["latin"],
|
|
||||||
});
|
|
||||||
|
|
||||||
const raleway = Raleway({
|
|
||||||
variable: "--font-raleway",
|
|
||||||
subsets: ["latin"],
|
|
||||||
});
|
|
||||||
|
|
||||||
export default function RootLayout({
|
export default function RootLayout({
|
||||||
children,
|
children,
|
||||||
}: Readonly<{
|
}: Readonly<{
|
||||||
@@ -50,7 +32,7 @@ export default function RootLayout({
|
|||||||
return (
|
return (
|
||||||
<html lang="en" suppressHydrationWarning>
|
<html lang="en" suppressHydrationWarning>
|
||||||
<ServiceWrapper>
|
<ServiceWrapper>
|
||||||
<body className={`${raleway.variable} antialiased`}>
|
<body className={`${mulish.variable} antialiased`}>
|
||||||
<Tag />
|
<Tag />
|
||||||
{children}
|
{children}
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ import FeatureCardNineteen from '@/components/sections/feature/FeatureCardNinete
|
|||||||
import MetricCardOne from '@/components/sections/metrics/MetricCardOne';
|
import MetricCardOne from '@/components/sections/metrics/MetricCardOne';
|
||||||
import TestimonialCardFive from '@/components/sections/testimonial/TestimonialCardFive';
|
import TestimonialCardFive from '@/components/sections/testimonial/TestimonialCardFive';
|
||||||
import FeatureCardTen from '@/components/sections/feature/FeatureCardTen';
|
import FeatureCardTen from '@/components/sections/feature/FeatureCardTen';
|
||||||
import SocialProofOne from '@/components/sections/socialProof/SocialProofOne';
|
|
||||||
import ContactText from '@/components/sections/contact/ContactText';
|
import ContactText from '@/components/sections/contact/ContactText';
|
||||||
import FooterCard from '@/components/sections/footer/FooterCard';
|
import FooterCard from '@/components/sections/footer/FooterCard';
|
||||||
import {
|
import {
|
||||||
@@ -50,7 +50,7 @@ export default function LandingPage() {
|
|||||||
>
|
>
|
||||||
<div id="nav" data-section="nav">
|
<div id="nav" data-section="nav">
|
||||||
<NavbarLayoutFloatingInline
|
<NavbarLayoutFloatingInline
|
||||||
navItems={[{ name: "Home", id: "/" }, { name: "About", id: "#about" }, { name: "Services", id: "#features-detailed" }, { name: "Clients", id: "#clients" }, { name: "Contact", id: "#contact" }]}
|
navItems={[{ name: "Home", id: "/" }, { name: "About", id: "#about" }, { name: "Services", id: "#features-detailed" }, { name: "Contact", id: "#contact" }]}
|
||||||
brandName="Pro Studio"
|
brandName="Pro Studio"
|
||||||
button={{ text: "Get a Quote", href: "#contact" }}
|
button={{ text: "Get a Quote", href: "#contact" }}
|
||||||
className="bg-card/90 backdrop-blur-sm shadow-lg"
|
className="bg-card/90 backdrop-blur-sm shadow-lg"
|
||||||
@@ -66,7 +66,13 @@ export default function LandingPage() {
|
|||||||
background={{ variant: "glowing-orb" }}
|
background={{ variant: "glowing-orb" }}
|
||||||
kpis={[{ value: "15+", label: "Years Experience" }, { value: "500+", label: "Projects Delivered" }, { value: "98%", label: "Client Satisfaction" }]}
|
kpis={[{ value: "15+", label: "Years Experience" }, { value: "500+", label: "Projects Delivered" }, { value: "98%", label: "Client Satisfaction" }]}
|
||||||
enableKpiAnimation={true}
|
enableKpiAnimation={true}
|
||||||
tag="Your Story, Our Expertise"
|
avatars={[
|
||||||
|
{ src: "https://picsum.photos/id/1005/40/40", alt: "Client Avatar 1" },
|
||||||
|
{ src: "https://picsum.photos/id/1006/40/40", alt: "Client Avatar 2" },
|
||||||
|
{ src: "https://picsum.photos/id/1008/40/40", alt: "Client Avatar 3" },
|
||||||
|
{ src: "https://picsum.photos/id/1011/40/40", alt: "Client Avatar 4" }
|
||||||
|
]}
|
||||||
|
avatarText="Trusted by over 200+ clients"
|
||||||
buttons={[{ text: "View Our Work", href: "#services" }, { text: "Get a Free Consultation", href: "#contact" }]}
|
buttons={[{ text: "View Our Work", href: "#services" }, { text: "Get a Free Consultation", href: "#contact" }]}
|
||||||
imageSrc="https://img.b2bpic.net/free-photo/medium-shot-people-radio-station_23-2148802324.jpg?_wi=1"
|
imageSrc="https://img.b2bpic.net/free-photo/medium-shot-people-radio-station_23-2148802324.jpg?_wi=1"
|
||||||
imageAlt="Professional production studio set up"
|
imageAlt="Professional production studio set up"
|
||||||
@@ -78,6 +84,21 @@ export default function LandingPage() {
|
|||||||
tagClassName="text-sm font-semibold text-primary-cta"
|
tagClassName="text-sm font-semibold text-primary-cta"
|
||||||
buttonClassName="px-8 py-3 rounded-pill text-lg"
|
buttonClassName="px-8 py-3 rounded-pill text-lg"
|
||||||
buttonTextClassName="font-semibold"
|
buttonTextClassName="font-semibold"
|
||||||
|
marqueeItems={[
|
||||||
|
{ type: "image", src: "https://picsum.photos/id/1018/100/50", alt: "Client Logo 1" },
|
||||||
|
{ type: "image", src: "https://picsum.photos/id/1025/100/50", alt: "Client Logo 2" },
|
||||||
|
{ type: "image", src: "https://picsum.photos/id/1032/100/50", alt: "Client Logo 3" },
|
||||||
|
{ type: "image", src: "https://picsum.photos/id/1035/100/50", alt: "Client Logo 4" },
|
||||||
|
{ type: "image", src: "https://picsum.photos/id/1043/100/50", alt: "Client Logo 5" },
|
||||||
|
{ type: "image", src: "https://picsum.photos/id/1047/100/50", alt: "Client Logo 6" },
|
||||||
|
{ type: "image", src: "https://picsum.photos/id/1049/100/50", alt: "Client Logo 7" },
|
||||||
|
{ type: "image", src: "https://picsum.photos/id/106/100/50", alt: "Client Logo 8" },
|
||||||
|
{ type: "image", src: "https://picsum.photos/id/107/100/50", alt: "Client Logo 9" },
|
||||||
|
{ type: "image", src: "https://picsum.photos/id/108/100/50", alt: "Client Logo 10" }
|
||||||
|
]}
|
||||||
|
marqueeSpeed={40}
|
||||||
|
showMarqueeCard={false}
|
||||||
|
marqueeImageClassName="max-h-12 w-auto object-contain py-2"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div id="about" data-section="about">
|
<div id="about" data-section="about">
|
||||||
@@ -175,25 +196,7 @@ export default function LandingPage() {
|
|||||||
cardDateClassName="text-sm text-foreground/60"
|
cardDateClassName="text-sm text-foreground/60"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div id="clients" data-section="clients">
|
|
||||||
<SocialProofOne
|
|
||||||
title="Our Valued Partners & Clients"
|
|
||||||
description="We've had the privilege to work with a diverse range of clients, helping them tell their stories and achieve their goals."
|
|
||||||
names={[
|
|
||||||
"Creative Minds Agency", "GlobalTech Solutions", "Apex Innovations", "Nexus Games", "Bloom Skincare", "FutureForward Consulting", "Digital Horizon Studios", "Urban Living Magazine", "Veridian Dynamics", "Starlight Entertainment"
|
|
||||||
]}
|
|
||||||
tag="Clients"
|
|
||||||
textboxLayout="default"
|
|
||||||
useInvertedBackground={false}
|
|
||||||
speed={40}
|
|
||||||
showCard={true}
|
|
||||||
className="py-20 md:py-28 lg:py-36 bg-background-accent"
|
|
||||||
textBoxTitleClassName="text-3xl md:text-5xl font-bold leading-tight"
|
|
||||||
textBoxDescriptionClassName="text-lg max-w-2xl mx-auto"
|
|
||||||
logoTextClassName="text-2xl font-semibold text-foreground/80"
|
|
||||||
logoCardClassName="bg-card/70 backdrop-blur-md"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div id="features-detailed" data-section="features-detailed">
|
<div id="features-detailed" data-section="features-detailed">
|
||||||
<FeatureCardTen
|
<FeatureCardTen
|
||||||
features={[
|
features={[
|
||||||
|
|||||||
@@ -90,12 +90,13 @@ function ProductPageContent({ params }: ProductPageProps) {
|
|||||||
headingFontWeight="medium"
|
headingFontWeight="medium"
|
||||||
>
|
>
|
||||||
<ReactLenis root>
|
<ReactLenis root>
|
||||||
<div id="navbar" data-section="navbar">
|
<div id="nav" data-section="nav">
|
||||||
<NavbarLayoutFloatingInline
|
<NavbarLayoutFloatingInline
|
||||||
navItems={[
|
navItems={[
|
||||||
{ name: "Home", id: "/" },
|
{ name: "Home", id: "/" },
|
||||||
{ name: "Shop", id: "/shop" },
|
{ name: "About", id: "/#about" },
|
||||||
{ name: "Clients", id: "/#clients" }
|
{ name: "Services", id: "/#features-detailed" },
|
||||||
|
{ name: "Contact", id: "/#contact" }
|
||||||
]}
|
]}
|
||||||
brandName="Pro Studio"
|
brandName="Pro Studio"
|
||||||
className="bg-card/90 backdrop-blur-sm shadow-lg"
|
className="bg-card/90 backdrop-blur-sm shadow-lg"
|
||||||
@@ -144,12 +145,13 @@ function ProductPageContent({ params }: ProductPageProps) {
|
|||||||
headingFontWeight="medium"
|
headingFontWeight="medium"
|
||||||
>
|
>
|
||||||
<ReactLenis root>
|
<ReactLenis root>
|
||||||
<div id="navbar" data-section="navbar">
|
<div id="nav" data-section="nav">
|
||||||
<NavbarLayoutFloatingInline
|
<NavbarLayoutFloatingInline
|
||||||
navItems={[
|
navItems={[
|
||||||
{ name: "Home", id: "/" },
|
{ name: "Home", id: "/" },
|
||||||
{ name: "Shop", id: "/shop" },
|
{ name: "About", id: "/#about" },
|
||||||
{ name: "Clients", id: "/#clients" }
|
{ name: "Services", id: "/#features-detailed" },
|
||||||
|
{ name: "Contact", id: "/#contact" }
|
||||||
]}
|
]}
|
||||||
brandName="Pro Studio"
|
brandName="Pro Studio"
|
||||||
className="bg-card/90 backdrop-blur-sm shadow-lg"
|
className="bg-card/90 backdrop-blur-sm shadow-lg"
|
||||||
@@ -205,12 +207,13 @@ function ProductPageContent({ params }: ProductPageProps) {
|
|||||||
headingFontWeight="medium"
|
headingFontWeight="medium"
|
||||||
>
|
>
|
||||||
<ReactLenis root>
|
<ReactLenis root>
|
||||||
<div id="navbar" data-section="navbar">
|
<div id="nav" data-section="nav">
|
||||||
<NavbarLayoutFloatingInline
|
<NavbarLayoutFloatingInline
|
||||||
navItems={[
|
navItems={[
|
||||||
{ name: "Home", id: "/" },
|
{ name: "Home", id: "/" },
|
||||||
{ name: "Shop", id: "/shop" },
|
{ name: "About", id: "/#about" },
|
||||||
{ name: "Clients", id: "/#clients" }
|
{ name: "Services", id: "/#features-detailed" },
|
||||||
|
{ name: "Contact", id: "/#contact" }
|
||||||
]}
|
]}
|
||||||
brandName="Pro Studio"
|
brandName="Pro Studio"
|
||||||
className="bg-card/90 backdrop-blur-sm shadow-lg"
|
className="bg-card/90 backdrop-blur-sm shadow-lg"
|
||||||
@@ -225,16 +228,11 @@ function ProductPageContent({ params }: ProductPageProps) {
|
|||||||
layout="page"
|
layout="page"
|
||||||
name={product.name}
|
name={product.name}
|
||||||
price={product.price}
|
price={product.price}
|
||||||
salePrice={meta.salePrice}
|
|
||||||
rating={product.rating || 0}
|
rating={product.rating || 0}
|
||||||
description={product.description}
|
description={product.description}
|
||||||
images={images}
|
images={images}
|
||||||
variants={variants.length > 0 ? variants : undefined}
|
variants={variants.length > 0 ? variants : undefined}
|
||||||
quantity={quantityVariant}
|
quantity={quantityVariant}
|
||||||
ribbon={meta.ribbon}
|
|
||||||
inventoryStatus={meta.inventoryStatus}
|
|
||||||
inventoryQuantity={meta.inventoryQuantity}
|
|
||||||
sku={meta.sku}
|
|
||||||
buttons={[
|
buttons={[
|
||||||
{ text: "Add To Cart", onClick: handleAddToCart },
|
{ text: "Add To Cart", onClick: handleAddToCart },
|
||||||
{ text: "Buy Now", onClick: handleBuyNow },
|
{ text: "Buy Now", onClick: handleBuyNow },
|
||||||
|
|||||||
@@ -57,12 +57,13 @@ export default function ShopPage() {
|
|||||||
headingFontWeight="medium"
|
headingFontWeight="medium"
|
||||||
>
|
>
|
||||||
<ReactLenis root>
|
<ReactLenis root>
|
||||||
<div id="navbar" data-section="navbar">
|
<div id="nav" data-section="nav">
|
||||||
<NavbarLayoutFloatingInline
|
<NavbarLayoutFloatingInline
|
||||||
navItems={[
|
navItems={[
|
||||||
{ name: "Home", id: "/" },
|
{ name: "Home", id: "/" },
|
||||||
{ name: "Shop", id: "/shop" },
|
{ name: "About", id: "/#about" },
|
||||||
{ name: "Clients", id: "/#clients" }
|
{ name: "Services", id: "/#features-detailed" },
|
||||||
|
{ name: "Contact", id: "/#contact" }
|
||||||
]}
|
]}
|
||||||
brandName="Pro Studio"
|
brandName="Pro Studio"
|
||||||
className="bg-card/90 backdrop-blur-sm shadow-lg"
|
className="bg-card/90 backdrop-blur-sm shadow-lg"
|
||||||
@@ -110,12 +111,13 @@ export default function ShopPage() {
|
|||||||
headingFontWeight="medium"
|
headingFontWeight="medium"
|
||||||
>
|
>
|
||||||
<ReactLenis root>
|
<ReactLenis root>
|
||||||
<div id="navbar" data-section="navbar">
|
<div id="nav" data-section="nav">
|
||||||
<NavbarLayoutFloatingInline
|
<NavbarLayoutFloatingInline
|
||||||
navItems={[
|
navItems={[
|
||||||
{ name: "Home", id: "/" },
|
{ name: "Home", id: "/" },
|
||||||
{ name: "Shop", id: "/shop" },
|
{ name: "About", id: "/#about" },
|
||||||
{ name: "Clients", id: "/#clients" }
|
{ name: "Services", id: "/#features-detailed" },
|
||||||
|
{ name: "Contact", id: "/#contact" }
|
||||||
]}
|
]}
|
||||||
brandName="Pro Studio"
|
brandName="Pro Studio"
|
||||||
className="bg-card/90 backdrop-blur-sm shadow-lg"
|
className="bg-card/90 backdrop-blur-sm shadow-lg"
|
||||||
|
|||||||
Reference in New Issue
Block a user