From 7cd9585c8fe96fa44375c4b66f578375ce6bf3bb Mon Sep 17 00:00:00 2001 From: Sandip Chowdhury Date: Sat, 18 Apr 2026 21:53:42 +0530 Subject: [PATCH] Ui cahnges and button linking --- app/(public)/_homeComponents/About.tsx | 4 ++ app/(public)/_homeComponents/Footer.tsx | 2 +- app/(public)/_homeComponents/Modules.tsx | 42 ++++++++----- .../_homeComponents/PricingSection.tsx | 61 ++++++++++--------- app/(public)/ats/_components/CTA.tsx | 32 +++++----- app/(public)/ats/_components/Hero.tsx | 26 +++++--- app/(public)/careers/page.tsx | 4 +- app/(public)/contact/_components/BookDemo.tsx | 31 ++++++---- .../contact/_components/ChooseWinixco.tsx | 36 +++++++---- .../contact/_components/ContactForm.tsx | 1 + .../contact/_components/HappyCustomers.tsx | 54 +++++++++------- .../contact/_components/PartnerWithUs.tsx | 4 +- .../contact/_components/TechnicalSupport.tsx | 18 ++---- app/(public)/crm/_components/CRMAnalytics.tsx | 19 ++++-- app/(public)/crm/_components/FinalCTA.tsx | 22 ++++--- app/(public)/crm/_components/Hero.tsx | 30 +++++---- app/(public)/features/page.tsx | 17 ++++-- app/(public)/hrms/_components/FinalCTA.tsx | 22 ++++--- app/(public)/hrms/_components/HRAnalytics.tsx | 26 ++++---- app/(public)/hrms/_components/Hero.tsx | 32 ++++++---- .../services/_components/ServiceCTA.tsx | 19 +++--- 21 files changed, 292 insertions(+), 210 deletions(-) diff --git a/app/(public)/_homeComponents/About.tsx b/app/(public)/_homeComponents/About.tsx index a43f08a..3736c92 100644 --- a/app/(public)/_homeComponents/About.tsx +++ b/app/(public)/_homeComponents/About.tsx @@ -1,3 +1,4 @@ +"use client"; import React from "react"; import { motion, Variants } from "framer-motion"; import { Button } from "@/components/ui/button"; @@ -11,8 +12,10 @@ import { Sparkles, } from "lucide-react"; import { home } from "@/services/Constants"; +import { useRouter } from "next/navigation"; const AboutUs: React.FC = () => { + const router = useRouter(); const containerVariants: Variants = { hidden: { opacity: 0 }, visible: { @@ -203,6 +206,7 @@ const AboutUs: React.FC = () => { - + + Start Free Trial + + + } + /> + + + Schedule Demo + + + } + /> @@ -214,4 +224,4 @@ const ModulesSection: React.FC = () => { ); }; -export default ModulesSection; \ No newline at end of file +export default ModulesSection; diff --git a/app/(public)/_homeComponents/PricingSection.tsx b/app/(public)/_homeComponents/PricingSection.tsx index bc94799..5850e22 100644 --- a/app/(public)/_homeComponents/PricingSection.tsx +++ b/app/(public)/_homeComponents/PricingSection.tsx @@ -4,8 +4,11 @@ import { Button } from "@/components/ui/button"; import { Card, CardContent } from "@/components/ui/card"; import { Badge } from "@/components/ui/badge"; import { Check } from "lucide-react"; +import { useRouter } from "next/navigation"; +import DemoModal from "./DemoModal"; export default function PricingSection() { + const router = useRouter(); const features = [ "Unlimited Jobs & Candidates", "FREE HRMS & CRM", @@ -20,9 +23,11 @@ export default function PricingSection() { ]; return ( -
+
- {/* Heading */}

Hire smarter. Track smarter. Manage everything from one platform. @@ -30,42 +35,41 @@ export default function PricingSection() {

One powerful ATS with{" "} - - FREE HRMS & CRM - {" "} - , AI automation and real-time geo-location tracking + FREE HRMS & CRM , AI + automation and real-time geo-location tracking

{/* Pricing Card */} - ALL-IN-ONE PLAN • HRMS & CRM FREE -

- Winixco ATS – One Plan -

+

Winixco ATS – One Plan

₹1,999
-
- per user / month -
+
per user / month
₹19,990 per user / year (2 months FREE)
- {/* Features */}
{features.map((item, index) => ( -
+
{item}
@@ -76,12 +80,12 @@ export default function PricingSection() { {/* Sections */}
- {/* Simple Pricing */}

Simple Per-Seat Pricing

- Each recruiter or HR team member requires one seat. All seats include full access to ATS, HRMS, CRM and AI features. + Each recruiter or HR team member requires one seat. All seats + include full access to ATS, HRMS, CRM and AI features.

    @@ -114,9 +118,7 @@ export default function PricingSection() {

    {plan.title}

    -

    - {plan.price} -

    +

    {plan.price}

    ))} @@ -128,7 +130,8 @@ export default function PricingSection() {

    Recruitment ROI Example

    - 10 recruiters using Winixco can save ~400 hours/month through AI automation resulting in productivity worth ₹4L+ per month. + 10 recruiters using Winixco can save ~400 hours/month through AI + automation resulting in productivity worth ₹4L+ per month.
@@ -136,12 +139,14 @@ export default function PricingSection() { {/* Footer CTA */}
-

- Need bulk pricing or demo? -

- +

Need bulk pricing or demo?

+ + Contact Sales + + } + />
@@ -151,4 +156,4 @@ export default function PricingSection() {
); -} \ No newline at end of file +} diff --git a/app/(public)/ats/_components/CTA.tsx b/app/(public)/ats/_components/CTA.tsx index 3d4a6f3..72e7c43 100644 --- a/app/(public)/ats/_components/CTA.tsx +++ b/app/(public)/ats/_components/CTA.tsx @@ -3,15 +3,14 @@ import React from "react"; import { motion } from "framer-motion"; import { Button } from "@/components/ui/button"; -import { - ArrowRight, - Sparkles, -} from "lucide-react"; +import { ArrowRight, Sparkles } from "lucide-react"; import { atsPageData } from "@/services/Constants"; - +import DemoModal from "../../_homeComponents/DemoModal"; +import { useRouter } from "next/navigation"; // CTA Section Component const CtaSection: React.FC = () => { + const router = useRouter(); return (
@@ -32,18 +31,23 @@ const CtaSection: React.FC = () => { - + + {atsPageData.cta.secondaryButton} + + + } + />

@@ -51,4 +55,4 @@ const CtaSection: React.FC = () => { ); }; -export default CtaSection \ No newline at end of file +export default CtaSection; diff --git a/app/(public)/ats/_components/Hero.tsx b/app/(public)/ats/_components/Hero.tsx index 799d609..f80b497 100644 --- a/app/(public)/ats/_components/Hero.tsx +++ b/app/(public)/ats/_components/Hero.tsx @@ -6,11 +6,12 @@ import { Button } from "@/components/ui/button"; import { Badge } from "@/components/ui/badge"; import { PlayCircle, ArrowRight, Sparkles } from "lucide-react"; import { atsPageData } from "@/services/Constants"; +import DemoModal from "../../_homeComponents/DemoModal"; + const HeroSection: React.FC = () => { return (
-
{

- - + } + /> + + {/* + */}
diff --git a/app/(public)/careers/page.tsx b/app/(public)/careers/page.tsx index b8df1c5..0f32394 100644 --- a/app/(public)/careers/page.tsx +++ b/app/(public)/careers/page.tsx @@ -7,6 +7,7 @@ import { HeartHandshake, ArrowRight, } from "lucide-react"; +import { useRouter } from "next/navigation"; import Link from "next/link"; const openRoles = [ @@ -37,6 +38,7 @@ const openRoles = [ ]; export default function Careers() { + const router = useRouter(); return (
{/* HERO */} @@ -112,7 +114,7 @@ export default function Careers() {
Apply Now diff --git a/app/(public)/contact/_components/BookDemo.tsx b/app/(public)/contact/_components/BookDemo.tsx index 65a31a2..b040ee0 100644 --- a/app/(public)/contact/_components/BookDemo.tsx +++ b/app/(public)/contact/_components/BookDemo.tsx @@ -3,6 +3,8 @@ import React from "react"; import { motion } from "framer-motion"; import { CalendarCheck, Send, CheckCircle } from "lucide-react"; import { Button } from "@/components/ui/button"; +import DemoModal from "../../_homeComponents/DemoModal"; +import { useRouter } from "next/navigation"; const features = [ "Personalized walkthrough of ATS, HRMS & CRM", @@ -12,6 +14,7 @@ const features = [ ]; const BookDemoSection = () => { + const router = useRouter(); return (
{/* Background Glow */} @@ -19,9 +22,7 @@ const BookDemoSection = () => { className="absolute inset-0 opacity-30 pointer-events-none" animate={{ scale: [1, 1.05, 1] }} transition={{ duration: 14, repeat: Infinity }} - > - - + >
{ className="mt-6 text-lg md:text-xl text-gray-600 max-w-3xl mx-auto" > Want to see how Winixco can improve hiring, HR operations or client - management? Get your free 1-on-1 demo — our team responds within 12 hours. + management? Get your free 1-on-1 demo — our team responds within 12 + hours. {/* Feature List */} @@ -61,17 +63,22 @@ const BookDemoSection = () => { animate={{ opacity: 1, y: 0 }} className="flex flex-col sm:flex-row gap-5 justify-center mt-12" > - + + + Book My Demo + + } + />
); }; -export { ChooseWinixco, WeLoveToHearFromYou }; \ No newline at end of file +export { ChooseWinixco, WeLoveToHearFromYou }; diff --git a/app/(public)/contact/_components/ContactForm.tsx b/app/(public)/contact/_components/ContactForm.tsx index c0ec2fa..b0f109f 100644 --- a/app/(public)/contact/_components/ContactForm.tsx +++ b/app/(public)/contact/_components/ContactForm.tsx @@ -99,6 +99,7 @@ const ContactForm: React.FC = () => { whileInView={{ opacity: 1, y: 0 }} viewport={{ once: true }} className="max-w-3xl mx-auto mb-20" + id="contact-form" > diff --git a/app/(public)/contact/_components/HappyCustomers.tsx b/app/(public)/contact/_components/HappyCustomers.tsx index 30f560d..b653be5 100644 --- a/app/(public)/contact/_components/HappyCustomers.tsx +++ b/app/(public)/contact/_components/HappyCustomers.tsx @@ -1,14 +1,11 @@ -"use client" -import React from 'react'; -import { motion } from 'framer-motion'; -import { Button } from '@/components/ui/button'; -import { Badge } from '@/components/ui/badge'; -import { - Users, - Star -} from 'lucide-react'; -import { CONTACT_DATA } from '@/services/Constants'; - +"use client"; +import React from "react"; +import { motion } from "framer-motion"; +import { Button } from "@/components/ui/button"; +import { Badge } from "@/components/ui/badge"; +import { Users, Star } from "lucide-react"; +import { CONTACT_DATA } from "@/services/Constants"; +import DemoModal from "../../_homeComponents/DemoModal"; // Happy Customers Component const HappyCustomers: React.FC = () => ( @@ -27,14 +24,21 @@ const HappyCustomers: React.FC = () => (

{CONTACT_DATA.customers.title} - {CONTACT_DATA.customers.highlight} + + {CONTACT_DATA.customers.highlight} +

- + + + Try for FREE + + } + />
@@ -42,8 +46,12 @@ const HappyCustomers: React.FC = () => (
-

{CONTACT_DATA.customers.count}

-

{CONTACT_DATA.customers.label}

+

+ {CONTACT_DATA.customers.count} +

+

+ {CONTACT_DATA.customers.label} +

@@ -59,7 +67,9 @@ const HappyCustomers: React.FC = () => ( whileHover={{ scale: 1.1 }} >
- {logo.name} + + {logo.name} +
))} @@ -70,4 +80,4 @@ const HappyCustomers: React.FC = () => ( ); -export default HappyCustomers \ No newline at end of file +export default HappyCustomers; diff --git a/app/(public)/contact/_components/PartnerWithUs.tsx b/app/(public)/contact/_components/PartnerWithUs.tsx index 7cc2eb1..b09662d 100644 --- a/app/(public)/contact/_components/PartnerWithUs.tsx +++ b/app/(public)/contact/_components/PartnerWithUs.tsx @@ -3,6 +3,7 @@ import React from "react"; import { motion } from "framer-motion"; import { BadgeCheck, Handshake, Globe, Layers } from "lucide-react"; import { Button } from "@/components/ui/button"; +import { useRouter } from "next/navigation"; const partnerships = [ "White-label & reseller partnership", @@ -12,6 +13,7 @@ const partnerships = [ ]; const PartnerWithUsSection = () => { + const router = useRouter(); return (
{ animate={{ opacity: 1, scale: 1 }} className="mt-12" > - diff --git a/app/(public)/contact/_components/TechnicalSupport.tsx b/app/(public)/contact/_components/TechnicalSupport.tsx index 1e766af..08226e3 100644 --- a/app/(public)/contact/_components/TechnicalSupport.tsx +++ b/app/(public)/contact/_components/TechnicalSupport.tsx @@ -19,8 +19,7 @@ const TechnicalSupportSection = () => { className="absolute inset-0 opacity-25 pointer-events-none" animate={{ scale: [1, 1.05, 1] }} transition={{ duration: 14, repeat: Infinity }} - > - + >
@@ -33,8 +32,8 @@ const TechnicalSupportSection = () => {

- Already using Winixco? We’re here to ensure everything works seamlessly - — fast responses & expert support guaranteed. + Already using Winixco? We’re here to ensure everything works + seamlessly — fast responses & expert support guaranteed.

@@ -53,18 +52,9 @@ const TechnicalSupportSection = () => { ))}
- -
- -
); }; -export default TechnicalSupportSection; \ No newline at end of file +export default TechnicalSupportSection; diff --git a/app/(public)/crm/_components/CRMAnalytics.tsx b/app/(public)/crm/_components/CRMAnalytics.tsx index 9cf4ed1..36cd3fa 100644 --- a/app/(public)/crm/_components/CRMAnalytics.tsx +++ b/app/(public)/crm/_components/CRMAnalytics.tsx @@ -5,8 +5,11 @@ import { motion } from "framer-motion"; import { Button } from "@/components/ui/button"; import { BarChart3 } from "lucide-react"; import { crm } from "@/services/Constants"; +import { useRouter } from "next/navigation"; +import DemoModal from "../../_homeComponents/DemoModal"; const CRMAnalytics: React.FC = () => { + const router = useRouter(); return (
@@ -60,12 +63,16 @@ const CRMAnalytics: React.FC = () => { viewport={{ once: true }} className="mt-12 text-center" > - + + View Full Analytics Dashboard + + } + />
diff --git a/app/(public)/crm/_components/FinalCTA.tsx b/app/(public)/crm/_components/FinalCTA.tsx index fd2de82..afad07e 100644 --- a/app/(public)/crm/_components/FinalCTA.tsx +++ b/app/(public)/crm/_components/FinalCTA.tsx @@ -4,9 +4,7 @@ import React from "react"; import { motion } from "framer-motion"; import { Button } from "@/components/ui/button"; import { crm } from "@/services/Constants"; - - - +import DemoModal from "../../_homeComponents/DemoModal"; const FinalCTA: React.FC = () => { return ( @@ -54,16 +52,20 @@ const FinalCTA: React.FC = () => { viewport={{ once: true }} className="mt-10" > - + + {crm.FINAL_CTA.ctaText} + + } + /> ); }; -export default FinalCTA \ No newline at end of file +export default FinalCTA; diff --git a/app/(public)/crm/_components/Hero.tsx b/app/(public)/crm/_components/Hero.tsx index 05cf4d1..7f5001c 100644 --- a/app/(public)/crm/_components/Hero.tsx +++ b/app/(public)/crm/_components/Hero.tsx @@ -12,7 +12,7 @@ import { UserCheck, } from "lucide-react"; import { crm } from "@/services/Constants"; - +import DemoModal from "../../_homeComponents/DemoModal"; // Components const CRMHero: React.FC = () => { @@ -38,7 +38,9 @@ const CRMHero: React.FC = () => { A Powerful CRM
- to Manage Leads, Customers & Sales Growth + + to Manage Leads, Customers & Sales Growth +

@@ -46,19 +48,25 @@ const CRMHero: React.FC = () => {

- - + } + /> + + {/* + */}
@@ -105,4 +113,4 @@ const CRMHero: React.FC = () => { ); }; -export default CRMHero \ No newline at end of file +export default CRMHero; diff --git a/app/(public)/features/page.tsx b/app/(public)/features/page.tsx index f758342..a338d20 100644 --- a/app/(public)/features/page.tsx +++ b/app/(public)/features/page.tsx @@ -8,6 +8,7 @@ import { WorkflowIcon, } from "lucide-react"; import { Button } from "@/components/ui/button"; +import DemoModal from "../_homeComponents/DemoModal"; const FEATURES_DATA = [ { @@ -91,12 +92,16 @@ export default function FeaturesPage() { Try Winixco now and transform the way your business grows.

- + + Book a Live Demo + + } + /> ); diff --git a/app/(public)/hrms/_components/FinalCTA.tsx b/app/(public)/hrms/_components/FinalCTA.tsx index 772aaa0..ea02620 100644 --- a/app/(public)/hrms/_components/FinalCTA.tsx +++ b/app/(public)/hrms/_components/FinalCTA.tsx @@ -4,9 +4,7 @@ import React from "react"; import { motion } from "framer-motion"; import { Button } from "@/components/ui/button"; import { hrms } from "@/services/Constants"; - - - +import DemoModal from "../../_homeComponents/DemoModal"; const FinalCTA: React.FC = () => { return ( @@ -54,16 +52,20 @@ const FinalCTA: React.FC = () => { viewport={{ once: true }} className="mt-10" > - + + {hrms.FINAL_CTA.ctaText} + + } + />
); }; -export default FinalCTA \ No newline at end of file +export default FinalCTA; diff --git a/app/(public)/hrms/_components/HRAnalytics.tsx b/app/(public)/hrms/_components/HRAnalytics.tsx index 78c9b30..2e5722d 100644 --- a/app/(public)/hrms/_components/HRAnalytics.tsx +++ b/app/(public)/hrms/_components/HRAnalytics.tsx @@ -3,13 +3,9 @@ import React from "react"; import { motion } from "framer-motion"; import { Button } from "@/components/ui/button"; -import { - BarChart3, -} from "lucide-react"; +import { BarChart3 } from "lucide-react"; import { hrms } from "@/services/Constants"; - - - +import DemoModal from "../../_homeComponents/DemoModal"; const HRAnalytics: React.FC = () => { return ( @@ -62,16 +58,20 @@ const HRAnalytics: React.FC = () => { viewport={{ once: true }} className="mt-12 text-center" > - + + View Full Analytics Dashboard + + } + /> ); }; -export default HRAnalytics \ No newline at end of file +export default HRAnalytics; diff --git a/app/(public)/hrms/_components/Hero.tsx b/app/(public)/hrms/_components/Hero.tsx index 5e59fc7..96627c7 100644 --- a/app/(public)/hrms/_components/Hero.tsx +++ b/app/(public)/hrms/_components/Hero.tsx @@ -12,10 +12,12 @@ import { UserCheck, } from "lucide-react"; import { hrms } from "@/services/Constants"; - +import { useRouter } from "next/navigation"; +import DemoModal from "../../_homeComponents/DemoModal"; // Components const HRMSHero: React.FC = () => { + const router = useRouter(); return (
@@ -34,9 +36,7 @@ const HRMSHero: React.FC = () => {

- - Modern HRMS - + Modern HRMS
Designed for Tomorrow

@@ -46,19 +46,25 @@ const HRMSHero: React.FC = () => {

- - + } + /> + + {/* + */}
@@ -105,4 +111,4 @@ const HRMSHero: React.FC = () => { ); }; -export default HRMSHero \ No newline at end of file +export default HRMSHero; diff --git a/app/(public)/services/_components/ServiceCTA.tsx b/app/(public)/services/_components/ServiceCTA.tsx index fd698aa..55ab485 100644 --- a/app/(public)/services/_components/ServiceCTA.tsx +++ b/app/(public)/services/_components/ServiceCTA.tsx @@ -2,13 +2,12 @@ import { Button } from "@/components/ui/button"; import { motion } from "framer-motion"; +import DemoModal from "../../_homeComponents/DemoModal"; export default function ServiceCTA() { return (
-
-
- - - + + Start Free Trial + + } + />
-
-
); -} \ No newline at end of file +}