3 Commits

Author SHA1 Message Date
3ada50a7da Update src/components/shared/SvgTextLogo/SvgTextLogo.tsx 2026-03-11 17:32:18 +00:00
41930710c8 Update src/app/page.tsx 2026-03-11 17:32:18 +00:00
e3e20020d4 Update src/app/page.tsx 2026-03-11 17:31:19 +00:00
2 changed files with 62 additions and 208 deletions

View File

@@ -41,9 +41,7 @@ export default function HomePage() {
brandName="SlotHub"
navItems={navItems}
button={{
text: "Enroll Now",
href: "#pricing",
}}
text: "Enroll Now", href: "#pricing"}}
className="fixed top-6 left-1/2 -translate-x-1/2 z-50 w-11/12 max-w-6xl"
/>
</div>
@@ -63,25 +61,15 @@ export default function HomePage() {
buttonAnimation="slide-up"
mediaItems={[
{
imageSrc: "http://img.b2bpic.net/free-vector/travel-booking-app-concept_23-2148597549.jpg",
imageAlt: "Enrollment Management Dashboard",
},
imageSrc: "http://img.b2bpic.net/free-vector/travel-booking-app-concept_23-2148597549.jpg", imageAlt: "Enrollment Management Dashboard"},
{
imageSrc: "http://img.b2bpic.net/free-vector/shopping-online-landing-page-concept_23-2148529678.jpg",
imageAlt: "Marketplace Interface",
},
imageSrc: "http://img.b2bpic.net/free-vector/shopping-online-landing-page-concept_23-2148529678.jpg", imageAlt: "Marketplace Interface"},
{
imageSrc: "http://img.b2bpic.net/free-vector/banners-set-different-plans-web_23-2147607464.jpg",
imageAlt: "Secure Payment Processing",
},
imageSrc: "http://img.b2bpic.net/free-vector/banners-set-different-plans-web_23-2147607464.jpg", imageAlt: "Secure Payment Processing"},
{
imageSrc: "http://img.b2bpic.net/free-photo/sign-user-password-privacy-concept_53876-121137.jpg",
imageAlt: "User Profile Management",
},
imageSrc: "http://img.b2bpic.net/free-photo/sign-user-password-privacy-concept_53876-121137.jpg", imageAlt: "User Profile Management"},
{
imageSrc: "http://img.b2bpic.net/free-photo/businesswoman-using-tablet_53876-95241.jpg",
imageAlt: "Analytics Dashboard",
},
imageSrc: "http://img.b2bpic.net/free-photo/businesswoman-using-tablet_53876-95241.jpg", imageAlt: "Analytics Dashboard"},
]}
ariaLabel="Hero section showcasing enrollment slots"
/>
@@ -96,19 +84,11 @@ export default function HomePage() {
tagAnimation="slide-up"
negativeCard={{
items: [
"Manual enrollment processing",
"Limited capacity visibility",
"Slow verification process",
"No real-time updates",
],
"Manual enrollment processing", "Limited capacity visibility", "Slow verification process", "No real-time updates"],
}}
positiveCard={{
items: [
"Instant automated enrollment",
"Real-time slot availability",
"Fast identity verification",
"Live status notifications",
],
"Instant automated enrollment", "Real-time slot availability", "Fast identity verification", "Live status notifications"],
}}
animationType="slide-up"
textboxLayout="default"
@@ -126,35 +106,14 @@ export default function HomePage() {
tagAnimation="slide-up"
products={[
{
id: "1",
brand: "SlotHub",
name: "Standard Enrollment",
price: "PKR 200",
rating: 5,
reviewCount: "2.3k",
imageSrc: "http://img.b2bpic.net/free-vector/certificate-appreciation-with-purple-geometric-forms_23-2147613202.jpg?_wi=1",
imageAlt: "Standard Enrollment Package",
},
id: "1", brand: "SlotHub", name: "Standard Enrollment", price: "PKR 200", rating: 5,
reviewCount: "2.3k", imageSrc: "http://img.b2bpic.net/free-vector/certificate-appreciation-with-purple-geometric-forms_23-2147613202.jpg", imageAlt: "Standard Enrollment Package"},
{
id: "2",
brand: "SlotHub",
name: "Priority Enrollment",
price: "PKR 300",
rating: 5,
reviewCount: "1.8k",
imageSrc: "http://img.b2bpic.net/free-vector/bartender-certificate-template-design_742173-3058.jpg?_wi=1",
imageAlt: "Priority Enrollment Package",
},
id: "2", brand: "SlotHub", name: "Priority Enrollment", price: "PKR 300", rating: 5,
reviewCount: "1.8k", imageSrc: "http://img.b2bpic.net/free-vector/bartender-certificate-template-design_742173-3058.jpg", imageAlt: "Priority Enrollment Package"},
{
id: "3",
brand: "SlotHub",
name: "Early Bird Special",
price: "PKR 150",
rating: 5,
reviewCount: "3.2k",
imageSrc: "http://img.b2bpic.net/free-vector/assortment-decorative-independence-day-stickers_23-2147627326.jpg?_wi=1",
imageAlt: "Early Bird Enrollment Package",
},
id: "3", brand: "SlotHub", name: "Early Bird Special", price: "PKR 150", rating: 5,
reviewCount: "3.2k", imageSrc: "http://img.b2bpic.net/free-vector/assortment-decorative-independence-day-stickers_23-2147627326.jpg", imageAlt: "Early Bird Enrollment Package"},
]}
gridVariant="three-columns-all-equal-width"
animationType="slide-up"
@@ -175,58 +134,31 @@ export default function HomePage() {
tagAnimation="slide-up"
plans={[
{
id: "1",
badge: "Standard Plan",
badgeIcon: CheckCircle,
price: "PKR 200",
subtitle: "Perfect for first-time enrollees",
buttons={[
id: "1", badge: "Standard Plan", badgeIcon: CheckCircle,
price: "PKR 200", subtitle: "Perfect for first-time enrollees", buttons: [
{ text: "Enroll Now", href: "#" },
{ text: "Learn More", href: "#" },
]}
features={[
"Instant enrollment confirmation",
"Lifetime access to platform",
"Email support",
"Digital certificate of enrollment",
"Access to community resources",
]}
],
features: [
"Instant enrollment confirmation", "Lifetime access to platform", "Email support", "Digital certificate of enrollment", "Access to community resources"]
},
{
id: "2",
badge: "Priority Plan",
badgeIcon: Sparkles,
price: "PKR 300",
subtitle: "Enhanced experience for priority members",
buttons={[
id: "2", badge: "Priority Plan", badgeIcon: Sparkles,
price: "PKR 300", subtitle: "Enhanced experience for priority members", buttons: [
{ text: "Upgrade Now", href: "#" },
{ text: "Compare Plans", href: "#" },
]}
features={[
"Everything in Standard",
"Priority slot reservation",
"24/7 dedicated support",
"Priority customer service",
"Exclusive member updates",
]}
],
features: [
"Everything in Standard", "Priority slot reservation", "24/7 dedicated support", "Priority customer service", "Exclusive member updates"]
},
{
id: "3",
badge: "Early Bird",
badgeIcon: Zap,
price: "PKR 150",
subtitle: "Limited-time offer for early enrollees",
buttons={[
id: "3", badge: "Early Bird", badgeIcon: Zap,
price: "PKR 150", subtitle: "Limited-time offer for early enrollees", buttons: [
{ text: "Grab Offer", href: "#" },
{ text: "Details", href: "#" },
]}
features={[
"Standard enrollment benefits",
"First-come-first-served basis",
"Valid for 48 hours only",
"Email support included",
"Community forum access",
]}
],
features: [
"Standard enrollment benefits", "First-come-first-served basis", "Valid for 48 hours only", "Email support included", "Community forum access"]
},
]}
animationType="slide-up"
@@ -241,41 +173,13 @@ export default function HomePage() {
<TestimonialCardTen
testimonials={[
{
id: "1",
title: "Seamless Enrollment Experience",
quote: "The enrollment process was incredibly smooth and hassle-free. I was able to secure my slot within minutes, and the entire experience was seamless from start to finish.",
name: "Ahmed Hassan",
role: "Business Entrepreneur",
imageSrc: "http://img.b2bpic.net/free-photo/young-smiling-businessman_1163-3871.jpg?_wi=1",
imageAlt: "Ahmed Hassan",
},
id: "1", title: "Seamless Enrollment Experience", quote: "The enrollment process was incredibly smooth and hassle-free. I was able to secure my slot within minutes, and the entire experience was seamless from start to finish.", name: "Ahmed Hassan", role: "Business Entrepreneur", imageSrc: "http://img.b2bpic.net/free-photo/young-smiling-businessman_1163-3871.jpg", imageAlt: "Ahmed Hassan"},
{
id: "2",
title: "Excellent Customer Support",
quote: "Outstanding support team! They answered all my questions promptly and helped me complete my enrollment without any issues. Highly recommended!",
name: "Fatima Khan",
role: "Marketing Professional",
imageSrc: "http://img.b2bpic.net/free-photo/real-professional-smiling-businesswoman-looking-confident-determined-face-expression-standing-suit-white-background_1258-123234.jpg?_wi=1",
imageAlt: "Fatima Khan",
},
id: "2", title: "Excellent Customer Support", quote: "Outstanding support team! They answered all my questions promptly and helped me complete my enrollment without any issues. Highly recommended!", name: "Fatima Khan", role: "Marketing Professional", imageSrc: "http://img.b2bpic.net/free-photo/real-professional-smiling-businesswoman-looking-confident-determined-face-expression-standing-suit-white-background_1258-123234.jpg", imageAlt: "Fatima Khan"},
{
id: "3",
title: "Best Value for Money",
quote: "For PKR 200, the value you get is exceptional. The platform is user-friendly, secure, and offers great benefits. Definitely worth every rupee!",
name: "Usman Ali",
role: "Technology Consultant",
imageSrc: "http://img.b2bpic.net/free-photo/young-businessman-happy-expression_1194-1674.jpg?_wi=1",
imageAlt: "Usman Ali",
},
id: "3", title: "Best Value for Money", quote: "For PKR 200, the value you get is exceptional. The platform is user-friendly, secure, and offers great benefits. Definitely worth every rupee!", name: "Usman Ali", role: "Technology Consultant", imageSrc: "http://img.b2bpic.net/free-photo/young-businessman-happy-expression_1194-1674.jpg", imageAlt: "Usman Ali"},
{
id: "4",
title: "Trusted by Thousands",
quote: "I was hesitant at first, but the transparent pricing and professional platform convinced me. Now I'm part of a thriving community of 1500+ members!",
name: "Zainab Mohammed",
role: "Educational Director",
imageSrc: "http://img.b2bpic.net/free-photo/front-view-smiley-man-with-copy-space_23-2148817118.jpg?_wi=1",
imageAlt: "Zainab Mohammed",
},
id: "4", title: "Trusted by Thousands", quote: "I was hesitant at first, but the transparent pricing and professional platform convinced me. Now I'm part of a thriving community of 1500+ members!", name: "Zainab Mohammed", role: "Educational Director", imageSrc: "http://img.b2bpic.net/free-photo/front-view-smiley-man-with-copy-space_23-2148817118.jpg", imageAlt: "Zainab Mohammed"},
]}
title="Trusted by Thousands of Happy Members"
description="Real stories from real members who have successfully enrolled and transformed their experience."
@@ -297,16 +201,9 @@ export default function HomePage() {
tagAnimation="slide-up"
textboxLayout="default"
useInvertedBackground={false}
names={["Microsoft", "Google", "Amazon", "Apple", "Netflix", "Spotify", "Uber", "Airbnb"]}
logos={[
"http://img.b2bpic.net/free-photo/programming-background-with-html-text_23-2150040419.jpg",
"http://img.b2bpic.net/free-photo/laptop-displaying-business-analytics_482257-115250.jpg",
"http://img.b2bpic.net/free-vector/technology-logo-background_23-2148156132.jpg",
"http://img.b2bpic.net/free-vector/laptop-background-with-elements-flat-design_23-2147634077.jpg",
"http://img.b2bpic.net/free-vector/media-icons-set_98292-970.jpg",
"http://img.b2bpic.net/free-vector/social-media-logo-collection_23-2148153516.jpg",
"http://img.b2bpic.net/free-vector/taxi-app-interface-concept_23-2148496309.jpg",
"http://img.b2bpic.net/free-vector/flat-labels-collection-hotel-accommodation_23-2150313253.jpg",
]}
"http://img.b2bpic.net/free-photo/programming-background-with-html-text_23-2150040419.jpg", "http://img.b2bpic.net/free-photo/laptop-displaying-business-analytics_482257-115250.jpg", "http://img.b2bpic.net/free-vector/technology-logo-background_23-2148156132.jpg", "http://img.b2bpic.net/free-vector/laptop-background-with-elements-flat-design_23-2147634077.jpg", "http://img.b2bpic.net/free-vector/media-icons-set_98292-970.jpg", "http://img.b2bpic.net/free-vector/social-media-logo-collection_23-2148153516.jpg", "http://img.b2bpic.net/free-vector/taxi-app-interface-concept_23-2148496309.jpg", "http://img.b2bpic.net/free-vector/flat-labels-collection-hotel-accommodation_23-2150313253.jpg"]}
speed={40}
showCard={true}
ariaLabel="Social proof section"
@@ -322,7 +219,7 @@ export default function HomePage() {
tagAnimation="slide-up"
textboxLayout="default"
useInvertedBackground={false}
imageSrc="http://img.b2bpic.net/free-photo/medium-shot-colleagues-work-chatting_23-2149308445.jpg?_wi=1"
imageSrc="http://img.b2bpic.net/free-photo/medium-shot-colleagues-work-chatting_23-2149308445.jpg"
imageAlt="FAQ Support"
mediaPosition="left"
mediaAnimation="slide-up"
@@ -330,35 +227,17 @@ export default function HomePage() {
animationType="smooth"
faqs={[
{
id: "1",
title: "What is the enrollment fee?",
content: "The standard enrollment fee is PKR 200. We also offer early bird specials at PKR 150 for limited time, and priority plans at PKR 300 for enhanced benefits.",
},
id: "1", title: "What is the enrollment fee?", content: "The standard enrollment fee is PKR 200. We also offer early bird specials at PKR 150 for limited time, and priority plans at PKR 300 for enhanced benefits."},
{
id: "2",
title: "How many slots are available?",
content: "We have a total capacity of 1500 slots. Slots are allocated on a first-come, first-served basis. You can check real-time availability on our platform.",
},
id: "2", title: "How many slots are available?", content: "We have a total capacity of 1500 slots. Slots are allocated on a first-come, first-served basis. You can check real-time availability on our platform."},
{
id: "3",
title: "What payment methods do you accept?",
content: "We accept all major payment methods including credit/debit cards, mobile wallets, and bank transfers. All transactions are secure and encrypted.",
},
id: "3", title: "What payment methods do you accept?", content: "We accept all major payment methods including credit/debit cards, mobile wallets, and bank transfers. All transactions are secure and encrypted."},
{
id: "4",
title: "Can I get a refund?",
content: "Yes, we offer a 7-day money-back guarantee if you're not satisfied. Simply contact our support team for a hassle-free refund.",
},
id: "4", title: "Can I get a refund?", content: "Yes, we offer a 7-day money-back guarantee if you're not satisfied. Simply contact our support team for a hassle-free refund."},
{
id: "5",
title: "How long is my enrollment valid?",
content: "Your enrollment is valid indefinitely. Once you enroll and pay the fee, you have lifetime access to the platform and all its features.",
},
id: "5", title: "How long is my enrollment valid?", content: "Your enrollment is valid indefinitely. Once you enroll and pay the fee, you have lifetime access to the platform and all its features."},
{
id: "6",
title: "Is my personal information secure?",
content: "Absolutely. We use enterprise-grade encryption and comply with all data protection regulations. Your information is safe with us.",
},
id: "6", title: "Is my personal information secure?", content: "Absolutely. We use enterprise-grade encryption and comply with all data protection regulations. Your information is safe with us."}
]}
ariaLabel="FAQ section"
/>
@@ -385,8 +264,7 @@ export default function HomePage() {
logoText="SlotHub"
columns={[
{
title: "Product",
items: [
title: "Product", items: [
{ label: "Pricing Plans", href: "#pricing" },
{ label: "Features", href: "#features" },
{ label: "How It Works", href: "#" },
@@ -394,8 +272,7 @@ export default function HomePage() {
],
},
{
title: "Company",
items: [
title: "Company", items: [
{ label: "About Us", href: "/about" },
{ label: "Blog", href: "#" },
{ label: "Careers", href: "#" },
@@ -403,8 +280,7 @@ export default function HomePage() {
],
},
{
title: "Support",
items: [
title: "Support", items: [
{ label: "Help Center", href: "#faq" },
{ label: "Contact Us", href: "#contact" },
{ label: "Status", href: "#" },
@@ -412,8 +288,7 @@ export default function HomePage() {
],
},
{
title: "Legal",
items: [
title: "Legal", items: [
{ label: "Privacy Policy", href: "#" },
{ label: "Terms of Service", href: "#" },
{ label: "Cookie Policy", href: "#" },

View File

@@ -1,51 +1,30 @@
"use client";
import { memo } from "react";
import useSvgTextLogo from "./useSvgTextLogo";
import { cls } from "@/lib/utils";
import React from 'react';
interface SvgTextLogoProps {
logoText: string;
adjustHeightFactor?: number;
verticalAlign?: "top" | "center";
text: string;
className?: string;
}
const SvgTextLogo = memo<SvgTextLogoProps>(function SvgTextLogo({
logoText,
adjustHeightFactor,
verticalAlign = "top",
className = "",
}) {
const { svgRef, textRef, viewBox, aspectRatio } = useSvgTextLogo(logoText, false, adjustHeightFactor);
export const SvgTextLogo: React.FC<SvgTextLogoProps> = ({ text, className = '' }) => {
return (
<svg
ref={svgRef}
viewBox={viewBox}
className={cls("w-full", className)}
style={{ aspectRatio: aspectRatio }}
preserveAspectRatio="none"
role="img"
aria-label={`${logoText} logo`}
viewBox={`0 0 ${text.length * 40} 60`}
className={className}
xmlns="http://www.w3.org/2000/svg"
>
<text
ref={textRef}
x="0"
y={verticalAlign === "center" ? "50%" : "0"}
className="font-bold fill-current"
style={{
fontSize: "20px",
letterSpacing: "-0.02em",
dominantBaseline: verticalAlign === "center" ? "middle" : "text-before-edge"
}}
x="50%"
y="50%"
dominantBaseline="middle"
textAnchor="middle"
fontSize="32"
fontWeight="bold"
fill="currentColor"
>
{logoText}
{text}
</text>
</svg>
);
});
};
SvgTextLogo.displayName = "SvgTextLogo";
export default SvgTextLogo;
export default SvgTextLogo;