Merge version_2 into main #1
83
src/app/dashboard/page.tsx
Normal file
83
src/app/dashboard/page.tsx
Normal file
@@ -0,0 +1,83 @@
|
||||
"use client";
|
||||
|
||||
import ReactLenis from "lenis/react";
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import NavbarLayoutFloatingOverlay from "@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay";
|
||||
import MetricCardTwo from "@/components/sections/metrics/MetricCardTwo";
|
||||
import { Award, Users, TrendingUp, User, Clock, CheckCircle } from "lucide-react";
|
||||
|
||||
export default function DashboardPage() {
|
||||
return (
|
||||
<ThemeProvider
|
||||
defaultButtonVariant="text-stagger"
|
||||
defaultTextAnimation="entrance-slide"
|
||||
borderRadius="pill"
|
||||
contentWidth="medium"
|
||||
sizing="medium"
|
||||
background="none"
|
||||
cardStyle="glass-elevated"
|
||||
primaryButtonStyle="metallic"
|
||||
secondaryButtonStyle="glass"
|
||||
headingFontWeight="medium"
|
||||
>
|
||||
<ReactLenis root>
|
||||
<NavbarLayoutFloatingOverlay
|
||||
brandName="Webild"
|
||||
navItems={[
|
||||
{ name: "Dashboard", id: "/dashboard" },
|
||||
{ name: "Work", id: "/work" },
|
||||
{ name: "Services", id: "/services" },
|
||||
{ name: "About", id: "/about" },
|
||||
{ name: "Contact", id: "/contact" },
|
||||
]}
|
||||
button={{ text: "Get Started", href: "/contact" }}
|
||||
/>
|
||||
<div className="pt-32 pb-20 px-6 max-w-7xl mx-auto space-y-12">
|
||||
<div className="bg-[var(--card)] p-8 rounded-2xl border border-white/10">
|
||||
<div className="flex items-center gap-6">
|
||||
<div className="w-24 h-24 rounded-full bg-[var(--background-accent)] flex items-center justify-center text-4xl">
|
||||
<User className="w-12 h-12" />
|
||||
</div>
|
||||
<div>
|
||||
<h1 className="text-3xl font-bold">Welcome back, User</h1>
|
||||
<p className="opacity-70 mt-1">Manage your bookings and project statistics below.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<MetricCardTwo
|
||||
title="Event Statistics"
|
||||
description="An overview of your engagement metrics and performance."
|
||||
textboxLayout="default"
|
||||
useInvertedBackground={false}
|
||||
gridVariant="uniform-all-items-equal"
|
||||
animationType="slide-up"
|
||||
metrics={[
|
||||
{ id: "bookings", value: "12", description: "Total bookings made" },
|
||||
{ id: "active", value: "3", description: "Active projects running" },
|
||||
{ id: "completed", value: "9", description: "Successfully completed events" },
|
||||
]}
|
||||
/>
|
||||
|
||||
<div className="bg-[var(--card)] p-8 rounded-2xl border border-white/10">
|
||||
<h2 className="text-2xl font-bold mb-6">Booking History</h2>
|
||||
<div className="space-y-4">
|
||||
{[1, 2, 3].map((i) => (
|
||||
<div key={i} className="flex items-center justify-between p-4 bg-[var(--background-accent)] rounded-xl border border-white/5">
|
||||
<div className="flex items-center gap-4">
|
||||
<CheckCircle className="w-6 h-6 text-emerald-500" />
|
||||
<div>
|
||||
<p className="font-semibold">Consultation Meeting #{i * 105}</p>
|
||||
<p className="text-sm opacity-60">Scheduled for Oct {i * 5}, 2024</p>
|
||||
</div>
|
||||
</div>
|
||||
<span className="px-3 py-1 bg-white/10 rounded-full text-xs font-medium uppercase">Completed</span>
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</ReactLenis>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
44
src/app/login/page.tsx
Normal file
44
src/app/login/page.tsx
Normal file
@@ -0,0 +1,44 @@
|
||||
"use client";
|
||||
|
||||
import React from "react";
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import NavbarLayoutFloatingOverlay from "@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay";
|
||||
import ContactForm from "@/components/form/ContactForm";
|
||||
|
||||
export default function LoginPage() {
|
||||
return (
|
||||
<ThemeProvider
|
||||
defaultButtonVariant="text-stagger"
|
||||
defaultTextAnimation="entrance-slide"
|
||||
borderRadius="pill"
|
||||
contentWidth="medium"
|
||||
sizing="medium"
|
||||
background="none"
|
||||
cardStyle="glass-elevated"
|
||||
primaryButtonStyle="metallic"
|
||||
secondaryButtonStyle="glass"
|
||||
headingFontWeight="medium"
|
||||
>
|
||||
<NavbarLayoutFloatingOverlay
|
||||
brandName="Webild"
|
||||
navItems={[
|
||||
{ name: "Work", id: "/" },
|
||||
{ name: "Services", id: "/" },
|
||||
{ name: "About", id: "/" },
|
||||
{ name: "Login", id: "/login" },
|
||||
]}
|
||||
button={{ text: "Get Started", href: "/contact" }}
|
||||
/>
|
||||
<main className="min-h-screen flex items-center justify-center pt-24">
|
||||
<ContactForm
|
||||
title="Login"
|
||||
description="Welcome back, please login to your account."
|
||||
tag="Access Account"
|
||||
inputPlaceholder="Enter your email"
|
||||
buttonText="Login"
|
||||
centered={true}
|
||||
/>
|
||||
</main>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
124
src/app/page.tsx
124
src/app/page.tsx
@@ -3,6 +3,7 @@
|
||||
import ReactLenis from "lenis/react";
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import NavbarLayoutFloatingOverlay from "@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay";
|
||||
import { BentoGlobe } from "@/components/bento/BentoGlobe";
|
||||
import HeroSplitDoubleCarousel from "@/components/sections/hero/HeroSplitDoubleCarousel";
|
||||
import FeatureBento from "@/components/sections/feature/FeatureBento";
|
||||
import FeatureCardTwentySix from "@/components/sections/feature/FeatureCardTwentySix";
|
||||
@@ -68,6 +69,7 @@ export default function WebAgency2Page() {
|
||||
]}
|
||||
carouselItemClassName="!aspect-[4/5]"
|
||||
/>
|
||||
<BentoGlobe className="py-20 px-6 max-w-7xl mx-auto" />
|
||||
<FeatureBento
|
||||
title="Our Services"
|
||||
description="We offer a full suite of digital services to help your brand stand out online."
|
||||
@@ -78,28 +80,18 @@ export default function WebAgency2Page() {
|
||||
buttonAnimation="slide-up"
|
||||
features={[
|
||||
{
|
||||
title: "SEO",
|
||||
description: "We optimize your website to rank higher on search engines and drive organic traffic.",
|
||||
bentoComponent: "marquee",
|
||||
centerIcon: Search,
|
||||
variant: "text",
|
||||
texts: ["Keywords", "Backlinks", "Meta Tags", "Organic Traffic", "Rankings", "Analytics", "SERP", "Indexing"],
|
||||
title: "SEO", description: "We optimize your website to rank higher on search engines and drive organic traffic.", bentoComponent: "marquee", centerIcon: Search,
|
||||
variant: "text", texts: ["Keywords", "Backlinks", "Meta Tags", "Organic Traffic", "Rankings", "Analytics", "SERP", "Indexing"],
|
||||
},
|
||||
{
|
||||
title: "Web Development",
|
||||
description: "Custom-built websites that are fast, responsive, and designed to convert.",
|
||||
bentoComponent: "media-stack",
|
||||
items: [
|
||||
title: "Web Development", description: "Custom-built websites that are fast, responsive, and designed to convert.", bentoComponent: "media-stack", items: [
|
||||
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/dev-2.webp", imageAlt: "Web project - AgentFlow AI platform" },
|
||||
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/dev-1.webp", imageAlt: "Web project - Architecture studio" },
|
||||
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/dev-3.webp", imageAlt: "Web project - Summit Roofing" },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Branding",
|
||||
description: "Build a memorable brand identity that resonates with your audience.",
|
||||
bentoComponent: "media-stack",
|
||||
items: [
|
||||
title: "Branding", description: "Build a memorable brand identity that resonates with your audience.", bentoComponent: "media-stack", items: [
|
||||
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/shot-1.webp", imageAlt: "Brand project 1" },
|
||||
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/shot-2.webp", imageAlt: "Brand project 2" },
|
||||
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/shot-4.webp", imageAlt: "Brand project 3" },
|
||||
@@ -117,45 +109,20 @@ export default function WebAgency2Page() {
|
||||
cardClassName="!h-auto aspect-video"
|
||||
features={[
|
||||
{
|
||||
title: "Umbra Skincare",
|
||||
description: "Luxury fragrance e-commerce",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/project-1.webp",
|
||||
imageAlt: "Umbra Skincare website",
|
||||
buttonIcon: ArrowUpRight,
|
||||
buttonHref: "#",
|
||||
},
|
||||
title: "Umbra Skincare", description: "Luxury fragrance e-commerce", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/project-1.webp", imageAlt: "Umbra Skincare website", buttonIcon: ArrowUpRight,
|
||||
buttonHref: "#"},
|
||||
{
|
||||
title: "Luxuria Travel",
|
||||
description: "Bespoke luxury travel experiences",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/project-2.webp",
|
||||
imageAlt: "Luxuria Travel website",
|
||||
buttonIcon: ArrowUpRight,
|
||||
buttonHref: "#",
|
||||
},
|
||||
title: "Luxuria Travel", description: "Bespoke luxury travel experiences", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/project-2.webp", imageAlt: "Luxuria Travel website", buttonIcon: ArrowUpRight,
|
||||
buttonHref: "#"},
|
||||
{
|
||||
title: "Dental Care",
|
||||
description: "Premier dental practice",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/project-3.webp",
|
||||
imageAlt: "Luxury Dental Care website",
|
||||
buttonIcon: ArrowUpRight,
|
||||
buttonHref: "#",
|
||||
},
|
||||
title: "Dental Care", description: "Premier dental practice", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/project-3.webp", imageAlt: "Luxury Dental Care website", buttonIcon: ArrowUpRight,
|
||||
buttonHref: "#"},
|
||||
{
|
||||
title: "Summit Roofing",
|
||||
description: "Professional roofing services",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/project-4.webp",
|
||||
imageAlt: "Summit Roofing website",
|
||||
buttonIcon: ArrowUpRight,
|
||||
buttonHref: "#",
|
||||
},
|
||||
title: "Summit Roofing", description: "Professional roofing services", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/project-4.webp", imageAlt: "Summit Roofing website", buttonIcon: ArrowUpRight,
|
||||
buttonHref: "#"},
|
||||
{
|
||||
title: "Dubai Real Estate",
|
||||
description: "Luxury property listings",
|
||||
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/project-5.webp",
|
||||
imageAlt: "Dubai Real Estate website",
|
||||
buttonIcon: ArrowUpRight,
|
||||
buttonHref: "#",
|
||||
},
|
||||
title: "Dubai Real Estate", description: "Luxury property listings", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/templates/web-agency-2/project-5.webp", imageAlt: "Dubai Real Estate website", buttonIcon: ArrowUpRight,
|
||||
buttonHref: "#"},
|
||||
]}
|
||||
/>
|
||||
<FeatureBento
|
||||
@@ -166,14 +133,9 @@ export default function WebAgency2Page() {
|
||||
animationType="slide-up"
|
||||
features={[
|
||||
{
|
||||
title: "All Devices Optimization",
|
||||
description: "Pixel-perfect websites that look stunning on every screen size and device.",
|
||||
bentoComponent: "phone",
|
||||
statusIcon: Lock,
|
||||
title: "All Devices Optimization", description: "Pixel-perfect websites that look stunning on every screen size and device.", bentoComponent: "phone", statusIcon: Lock,
|
||||
alertIcon: Monitor,
|
||||
alertTitle: "Responsive check",
|
||||
alertMessage: "All breakpoints passed",
|
||||
apps: [
|
||||
alertTitle: "Responsive check", alertMessage: "All breakpoints passed", apps: [
|
||||
{ name: "Phone", icon: Phone },
|
||||
{ name: "SMS", icon: MessageCircle },
|
||||
{ name: "Books", icon: BookOpen },
|
||||
@@ -185,29 +147,17 @@ export default function WebAgency2Page() {
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Secure Hosting",
|
||||
description: "Enterprise-grade security and 99.9% uptime for your website.",
|
||||
bentoComponent: "reveal-icon",
|
||||
icon: Shield,
|
||||
title: "Secure Hosting", description: "Enterprise-grade security and 99.9% uptime for your website.", bentoComponent: "reveal-icon", icon: Shield,
|
||||
},
|
||||
{
|
||||
title: "Fast Turnaround",
|
||||
description: "From concept to launch in record time without sacrificing quality.",
|
||||
bentoComponent: "timeline",
|
||||
heading: "Project Launch",
|
||||
subheading: "Week 1",
|
||||
items: [
|
||||
title: "Fast Turnaround", description: "From concept to launch in record time without sacrificing quality.", bentoComponent: "timeline", heading: "Project Launch", subheading: "Week 1", items: [
|
||||
{ label: "Discovery & wireframes", detail: "Day 1-3" },
|
||||
{ label: "Design & development", detail: "Day 4-10" },
|
||||
{ label: "Testing & deployment", detail: "Day 11-14" },
|
||||
],
|
||||
completedLabel: "Live",
|
||||
},
|
||||
completedLabel: "Live"},
|
||||
{
|
||||
title: "Seamless Integrations",
|
||||
description: "Connect with the tools you already use — CRMs, analytics, payments, and more.",
|
||||
bentoComponent: "orbiting-icons",
|
||||
centerIcon: Puzzle,
|
||||
title: "Seamless Integrations", description: "Connect with the tools you already use — CRMs, analytics, payments, and more.", bentoComponent: "orbiting-icons", centerIcon: Puzzle,
|
||||
items: [
|
||||
{ icon: Shield },
|
||||
{ icon: Monitor },
|
||||
@@ -216,10 +166,7 @@ export default function WebAgency2Page() {
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Growth Trends",
|
||||
description: "Data-driven insights to optimize your search presence and drive traffic.",
|
||||
bentoComponent: "line-chart",
|
||||
},
|
||||
title: "Growth Trends", description: "Data-driven insights to optimize your search presence and drive traffic.", bentoComponent: "line-chart"},
|
||||
]}
|
||||
/>
|
||||
<TestimonialCardFifteen
|
||||
@@ -254,21 +201,11 @@ export default function WebAgency2Page() {
|
||||
animationType="slide-up"
|
||||
negativeCard={{
|
||||
items: [
|
||||
"Generic templates with no personality",
|
||||
"Slow load times and poor performance",
|
||||
"No SEO strategy or search visibility",
|
||||
"Outdated design that hurts credibility",
|
||||
"No ongoing support after launch",
|
||||
],
|
||||
"Generic templates with no personality", "Slow load times and poor performance", "No SEO strategy or search visibility", "Outdated design that hurts credibility", "No ongoing support after launch"],
|
||||
}}
|
||||
positiveCard={{
|
||||
items: [
|
||||
"Custom designs tailored to your brand",
|
||||
"Lightning-fast performance on all devices",
|
||||
"Built-in SEO to drive organic traffic",
|
||||
"Modern design that builds trust",
|
||||
"Dedicated support and maintenance",
|
||||
],
|
||||
"Custom designs tailored to your brand", "Lightning-fast performance on all devices", "Built-in SEO to drive organic traffic", "Modern design that builds trust", "Dedicated support and maintenance"],
|
||||
}}
|
||||
/>
|
||||
<TeamCardFive
|
||||
@@ -315,8 +252,7 @@ export default function WebAgency2Page() {
|
||||
copyrightText="© 2026 | Webild"
|
||||
columns={[
|
||||
{
|
||||
title: "Company",
|
||||
items: [
|
||||
title: "Company", items: [
|
||||
{ label: "About", href: "#about" },
|
||||
{ label: "Services", href: "#services" },
|
||||
{ label: "Work", href: "#work" },
|
||||
@@ -324,8 +260,7 @@ export default function WebAgency2Page() {
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Services",
|
||||
items: [
|
||||
title: "Services", items: [
|
||||
{ label: "Web Development", href: "#" },
|
||||
{ label: "SEO", href: "#" },
|
||||
{ label: "Branding", href: "#" },
|
||||
@@ -333,8 +268,7 @@ export default function WebAgency2Page() {
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Connect",
|
||||
items: [
|
||||
title: "Connect", items: [
|
||||
{ label: "Twitter", href: "#" },
|
||||
{ label: "LinkedIn", href: "#" },
|
||||
{ label: "Instagram", href: "#" },
|
||||
@@ -346,4 +280,4 @@ export default function WebAgency2Page() {
|
||||
</ReactLenis>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
}
|
||||
44
src/app/reset-password/page.tsx
Normal file
44
src/app/reset-password/page.tsx
Normal file
@@ -0,0 +1,44 @@
|
||||
"use client";
|
||||
|
||||
import React from "react";
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import NavbarLayoutFloatingOverlay from "@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay";
|
||||
import ContactForm from "@/components/form/ContactForm";
|
||||
|
||||
export default function ResetPasswordPage() {
|
||||
return (
|
||||
<ThemeProvider
|
||||
defaultButtonVariant="text-stagger"
|
||||
defaultTextAnimation="entrance-slide"
|
||||
borderRadius="pill"
|
||||
contentWidth="medium"
|
||||
sizing="medium"
|
||||
background="none"
|
||||
cardStyle="glass-elevated"
|
||||
primaryButtonStyle="metallic"
|
||||
secondaryButtonStyle="glass"
|
||||
headingFontWeight="medium"
|
||||
>
|
||||
<NavbarLayoutFloatingOverlay
|
||||
brandName="Webild"
|
||||
navItems={[
|
||||
{ name: "Work", id: "/" },
|
||||
{ name: "Services", id: "/" },
|
||||
{ name: "About", id: "/" },
|
||||
{ name: "Login", id: "/login" },
|
||||
]}
|
||||
button={{ text: "Get Started", href: "/contact" }}
|
||||
/>
|
||||
<main className="min-h-screen flex items-center justify-center pt-24">
|
||||
<ContactForm
|
||||
title="Reset Password"
|
||||
description="Enter your email address to receive instructions on how to reset your password."
|
||||
tag="Recovery"
|
||||
inputPlaceholder="Enter your email"
|
||||
buttonText="Send Reset Link"
|
||||
centered={true}
|
||||
/>
|
||||
</main>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
44
src/app/signup/page.tsx
Normal file
44
src/app/signup/page.tsx
Normal file
@@ -0,0 +1,44 @@
|
||||
"use client";
|
||||
|
||||
import React from "react";
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import NavbarLayoutFloatingOverlay from "@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay";
|
||||
import ContactForm from "@/components/form/ContactForm";
|
||||
|
||||
export default function SignupPage() {
|
||||
return (
|
||||
<ThemeProvider
|
||||
defaultButtonVariant="text-stagger"
|
||||
defaultTextAnimation="entrance-slide"
|
||||
borderRadius="pill"
|
||||
contentWidth="medium"
|
||||
sizing="medium"
|
||||
background="none"
|
||||
cardStyle="glass-elevated"
|
||||
primaryButtonStyle="metallic"
|
||||
secondaryButtonStyle="glass"
|
||||
headingFontWeight="medium"
|
||||
>
|
||||
<NavbarLayoutFloatingOverlay
|
||||
brandName="Webild"
|
||||
navItems={[
|
||||
{ name: "Work", id: "/" },
|
||||
{ name: "Services", id: "/" },
|
||||
{ name: "About", id: "/" },
|
||||
{ name: "Signup", id: "/signup" },
|
||||
]}
|
||||
button={{ text: "Get Started", href: "/contact" }}
|
||||
/>
|
||||
<main className="min-h-screen flex items-center justify-center pt-24">
|
||||
<ContactForm
|
||||
title="Sign Up"
|
||||
description="Create your account and start your journey with us."
|
||||
tag="Join Us"
|
||||
inputPlaceholder="Enter your email"
|
||||
buttonText="Create Account"
|
||||
centered={true}
|
||||
/>
|
||||
</main>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
@@ -11,14 +11,14 @@
|
||||
--background-accent: #ffffff; */
|
||||
|
||||
--background: #0a0a0a;
|
||||
--card: #161616;
|
||||
--foreground: #f0f0f0;
|
||||
--primary-cta: #ffffff;
|
||||
--card: #1a1a1a;
|
||||
--foreground: #ffffff;
|
||||
--primary-cta: #ef4444;
|
||||
--primary-cta-text: #0a0a0a;
|
||||
--secondary-cta: #1e1e1e;
|
||||
--secondary-cta: #1a1a1a;
|
||||
--secondary-cta-text: #e0e0e0;
|
||||
--accent: #d0d0d0;
|
||||
--background-accent: #9a9a9a;
|
||||
--accent: #1e3a8a;
|
||||
--background-accent: #1e3a8a;
|
||||
|
||||
/* text sizing - set by ThemeProvider */
|
||||
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);
|
||||
|
||||
Reference in New Issue
Block a user