From e6d126d1cbc8adb69fc97739aebd1e59ab8fe7f5 Mon Sep 17 00:00:00 2001 From: kudinDmitriyUp Date: Wed, 1 Jul 2026 04:03:33 +0000 Subject: [PATCH] Bob AI: Added VicForce recruitment services sections. --- src/pages/HomePage.tsx | 8 +- .../HomePage/sections/VicforceIntroWhy.tsx | 64 ++++++++ .../HomePage/sections/VicforceProcessCta.tsx | 102 ++++++++++++ .../sections/VicforceServicesRoles.tsx | 146 ++++++++++++++++++ 4 files changed, 319 insertions(+), 1 deletion(-) create mode 100644 src/pages/HomePage/sections/VicforceIntroWhy.tsx create mode 100644 src/pages/HomePage/sections/VicforceProcessCta.tsx create mode 100644 src/pages/HomePage/sections/VicforceServicesRoles.tsx diff --git a/src/pages/HomePage.tsx b/src/pages/HomePage.tsx index 84e18cf..8e95bbe 100644 --- a/src/pages/HomePage.tsx +++ b/src/pages/HomePage.tsx @@ -16,7 +16,10 @@ import ContactSection from './HomePage/sections/Contact'; import TrustMetricsSection from './HomePage/sections/TrustMetrics'; -import VerseSection from './HomePage/sections/Verse';export default function HomePage(): React.JSX.Element { +import VerseSection from './HomePage/sections/Verse'; +import VicforceIntroWhySection from './HomePage/sections/VicforceIntroWhy'; +import VicforceServicesRolesSection from './HomePage/sections/VicforceServicesRoles'; +import VicforceProcessCtaSection from './HomePage/sections/VicforceProcessCta';export default function HomePage(): React.JSX.Element { return ( <> @@ -34,8 +37,11 @@ import VerseSection from './HomePage/sections/Verse';export default function Hom + + + ); } diff --git a/src/pages/HomePage/sections/VicforceIntroWhy.tsx b/src/pages/HomePage/sections/VicforceIntroWhy.tsx new file mode 100644 index 0000000..5dd1908 --- /dev/null +++ b/src/pages/HomePage/sections/VicforceIntroWhy.tsx @@ -0,0 +1,64 @@ +import { CheckCircle2, Clock, Users, Headphones, ThumbsUp, Handshake } from "lucide-react"; +import ScrollReveal from "@/components/ui/ScrollReveal"; +import TextAnimation from "@/components/ui/TextAnimation"; + +export default function VicforceIntroWhySection() { + const whyChoose = [ + { title: "Operational Accuracy", desc: "Every recruitment process is managed with precision to ensure quality outcomes and seamless workforce integration.", icon: CheckCircle2 }, + { title: "Rapid Response", desc: "Fast turnaround times to minimise downtime and keep your business operating efficiently.", icon: Clock }, + { title: "Candidate Matching", desc: "We carefully match skills, experience and workplace culture to ensure long-term success.", icon: Users }, + { title: "24/7 Client Support", desc: "Our team remains responsive whenever your business requires workforce assistance.", icon: Headphones }, + { title: "Satisfaction Focused", desc: "Building lasting relationships through consistent service, reliability and accountability.", icon: ThumbsUp }, + { title: "Personalised Partnerships", desc: "Every workforce solution is tailored to meet your organisation's unique operational requirements.", icon: Handshake } + ]; + + return ( +
+ {/* Introduction */} +
+
+ + +

+ At VicForce Recruitment, we understand that every business relies on having the right people in the right roles at the right time. +

+

+ With a reputation built on operational accuracy, rapid response times, personalised service and long-term partnerships, we provide tailored workforce solutions that help organisations maintain productivity and grow with confidence. +

+

+ Whether you require a single employee, temporary workforce support or an outsourced recruitment partner, VicForce delivers reliable recruitment solutions backed by professionalism, integrity and exceptional customer service. +

+
+
+
+ + {/* Why Choose VicForce */} +
+
+
+ +
+
+ {whyChoose.map((item, idx) => ( + +
+
+ +
+

{item.title}

+

{item.desc}

+
+
+ ))} +
+
+
+
+ ); +} \ No newline at end of file diff --git a/src/pages/HomePage/sections/VicforceProcessCta.tsx b/src/pages/HomePage/sections/VicforceProcessCta.tsx new file mode 100644 index 0000000..a01f91c --- /dev/null +++ b/src/pages/HomePage/sections/VicforceProcessCta.tsx @@ -0,0 +1,102 @@ +import { CheckCircle2, ArrowRight } from "lucide-react"; +import Button from "@/components/ui/Button"; +import ScrollReveal from "@/components/ui/ScrollReveal"; +import TextAnimation from "@/components/ui/TextAnimation"; + +export default function VicforceProcessCtaSection() { + const process = [ + { step: "1. Consultation", desc: "We take the time to understand your workforce needs and business objectives." }, + { step: "2. Candidate Search", desc: "Leveraging our extensive talent network to identify the right people." }, + { step: "3. Screening & Assessment", desc: "Comprehensive screening, reference checking and suitability assessments." }, + { step: "4. Placement", desc: "Efficient onboarding with the right candidate for your organisation." }, + { step: "5. Ongoing Support", desc: "Continued communication and workforce support to ensure long-term success." } + ]; + + const commitments = [ + "Deliver exceptional service with dedication and integrity.", + "Provide cost-effective workforce solutions tailored to each client's business.", + "Continuously monitor performance to ensure client satisfaction.", + "Improve our processes to deliver seamless, efficient service.", + "Be available to support our clients 24 hours a day, 7 days a week." + ]; + + return ( +
+ {/* Our Recruitment Process */} +
+
+
+ +
+ +
+
+ +
+ {process.map((step, idx) => ( + +
+ {idx + 1} +
+

{step.step.split('. ')[1]}

+

{step.desc}

+ {idx < process.length - 1 && ( + + )} +
+ ))} +
+
+
+
+ + {/* Our Commitment */} +
+
+
+ +
+
+ {commitments.map((commitment, idx) => ( + +
+
+ +
+

{commitment}

+
+
+ ))} +
+
+
+ + {/* Final Call to Action */} +
+
+
+
+
+ +
+ + +

+ From temporary staffing to permanent recruitment and complete workforce management, VicForce is committed to connecting businesses with the people they need to succeed. +

+
+
+
+
+
+
+ ); +} \ No newline at end of file diff --git a/src/pages/HomePage/sections/VicforceServicesRoles.tsx b/src/pages/HomePage/sections/VicforceServicesRoles.tsx new file mode 100644 index 0000000..71e4b61 --- /dev/null +++ b/src/pages/HomePage/sections/VicforceServicesRoles.tsx @@ -0,0 +1,146 @@ +import { useState } from "react"; +import { motion, AnimatePresence } from "motion/react"; +import { Briefcase, Clock, FileText, DollarSign, Users, Building2, BarChart, TrendingUp, MonitorPlay, ShieldCheck, HeartHandshake, Search, Check } from "lucide-react"; +import Input from "@/components/ui/Input"; +import ScrollReveal from "@/components/ui/ScrollReveal"; +import TextAnimation from "@/components/ui/TextAnimation"; + +export default function VicforceServicesRolesSection() { + const [activeTab, setActiveTab] = useState("Industrial"); + const [searchQuery, setSearchQuery] = useState(""); + + const services = [ + { title: "Permanent Recruitment", desc: "Secure high-quality long-term employees for your organisation.", icon: Briefcase }, + { title: "Temporary Recruitment", desc: "Flexible staffing solutions to meet changing business demands.", icon: Clock }, + { title: "Contract Recruitment", desc: "Experienced professionals available for project-based or fixed-term assignments.", icon: FileText }, + { title: "Payroll Services", desc: "Comprehensive payroll administration and workforce management.", icon: DollarSign }, + { title: "Outsourced Workforce Management", desc: "End-to-end management of casual and contingent workforces.", icon: Users }, + { title: "On-Site Recruitment Services", desc: "Dedicated recruitment support integrated into your workplace.", icon: Building2 }, + { title: "Workforce Reporting", desc: "Tailored reporting and workforce insights to support business decisions.", icon: BarChart }, + { title: "Salary Reviews", desc: "Salary benchmarking and remuneration guidance.", icon: TrendingUp }, + { title: "Software Training", desc: "Recruitment system implementation and user training.", icon: MonitorPlay }, + { title: "Workplace Safety Advice", desc: "Occupational Health & Safety guidance and compliance support.", icon: ShieldCheck }, + { title: "Equal Employment Opportunity", desc: "Inclusive recruitment practices that support diverse workplaces.", icon: HeartHandshake } + ]; + + const industries = [ + "Commercial", "Industrial", "Technical", "Hospitality", "Recreation", "Warehousing & Logistics", "Manufacturing", "Professional Services" + ]; + + const roles: Record = { + "Industrial": [ + "Cleaners (Hospital, Commercial & Industrial)", "Forklift Operators", "Delivery Drivers", "Labourers", "Leading Hands", "Foremen & Supervisors", "Maintenance Workers", "Pick Packers", "Plant Operators", "Process Workers", "Storepersons", "Store Supervisors", "Warehouse Staff", "Warehouse Managers", "Tradespeople (All Disciplines)" + ], + "Commercial": [ + "Accounts Clerks", "Accounts Supervisors", "Assistant Accountants", "Bookkeepers", "Payroll Officers", "Customer Service Officers", "Customer Service Team Leaders", "Customer Service Managers", "Data Entry Operators", "Documentation Officers", "General Clerks", "Human Resources Officers", "Legal Secretaries", "Marketing Managers", "Office Administrators", "Office Managers", "Executive Assistants", "Personal Assistants", "Receptionists", "Telephonists", "Word Processing Officers", "Systems Administrators", "PC Support Specialists", "Sales Executives", "Sales & Account Managers", "Telemarketers", "Telemarketing Team Leaders", "Telemarketing Managers" + ], + "Hospitality": [ + "Front Office Staff", "Food & Beverage Staff", "Housekeeping Staff", "Hospitality Supervisors", "Event & Venue Support Staff" + ] + }; + + const filteredRoles = roles[activeTab].filter(role => + role.toLowerCase().includes(searchQuery.toLowerCase()) + ); + + return ( +
+ {/* Recruitment Services */} +
+
+
+ +
+
+ {services.map((service, idx) => ( + +
+ +

{service.title}

+

{service.desc}

+
+
+ ))} +
+
+
+ + {/* Industries We Support */} +
+
+
+ +
+
+ {industries.map((industry, idx) => ( + +
+ {industry} +
+
+ ))} +
+
+
+ + {/* Roles We Recruit */} +
+
+
+ + +
+ {Object.keys(roles).map((tab) => ( + + ))} +
+ +
+ + setSearchQuery(e.target.value)} + className="pl-10 w-full bg-background" + /> +
+
+ +
+ + {filteredRoles.map((role) => ( + + + {role} + + ))} + {filteredRoles.length === 0 && ( +
+ No roles found matching "{searchQuery}" +
+ )} +
+
+
+
+
+ ); +} \ No newline at end of file -- 2.49.1