feat: add industry pages data structure for robotics solutions across various sectors
This commit is contained in:
parent
fa5f4f7a3e
commit
329967df60
674
src/app/industries/[slug]/page.tsx
Normal file
674
src/app/industries/[slug]/page.tsx
Normal file
@ -0,0 +1,674 @@
|
||||
import type { Metadata } from 'next';
|
||||
import Link from 'next/link';
|
||||
import { notFound } from 'next/navigation';
|
||||
import {
|
||||
Bot,
|
||||
Truck,
|
||||
Sparkles,
|
||||
CircleUserRound,
|
||||
Cog,
|
||||
Compass,
|
||||
Cpu,
|
||||
ScanLine,
|
||||
Search,
|
||||
Layers,
|
||||
Bell,
|
||||
UtensilsCrossed,
|
||||
ChevronRight,
|
||||
ArrowRight,
|
||||
} from 'lucide-react';
|
||||
import { Navbar } from '@/components/Navbar';
|
||||
import { FooterAndContact } from '@/components/FooterAndContact';
|
||||
import { MotionSection } from '@/components/ui/MotionSection';
|
||||
import { CTAButton } from '@/components/ui/CTAButton';
|
||||
import { INDUSTRIES, getIndustryBySlug } from '@/data/industries';
|
||||
import { INDUSTRY_PAGES, type IndustrySolution } from '@/data/industry-pages';
|
||||
|
||||
type Params = { slug: string };
|
||||
|
||||
const ICONS: Record<IndustrySolution['iconKey'], React.ComponentType<{ size?: number; strokeWidth?: number }>> = {
|
||||
service: Bell,
|
||||
delivery: Truck,
|
||||
cleaning: Sparkles,
|
||||
humanoid: CircleUserRound,
|
||||
quadruped: Bot,
|
||||
sensor: ScanLine,
|
||||
inspect: Search,
|
||||
platform: Cpu,
|
||||
guide: Compass,
|
||||
queue: Layers,
|
||||
host: CircleUserRound,
|
||||
tray: UtensilsCrossed,
|
||||
};
|
||||
|
||||
export function generateStaticParams() {
|
||||
return INDUSTRIES.map((i) => ({ slug: i.slug }));
|
||||
}
|
||||
|
||||
export async function generateMetadata({ params }: { params: Promise<Params> }): Promise<Metadata> {
|
||||
const { slug } = await params;
|
||||
const industry = getIndustryBySlug(slug);
|
||||
if (!industry) return {};
|
||||
const content = INDUSTRY_PAGES[industry.id];
|
||||
if (!content) return {};
|
||||
const url = `/industries/${industry.slug}/`;
|
||||
return {
|
||||
title: content.seoTitle,
|
||||
description: content.seoDescription,
|
||||
alternates: { canonical: url },
|
||||
openGraph: {
|
||||
title: content.seoTitle,
|
||||
description: content.seoDescription,
|
||||
url,
|
||||
type: 'website',
|
||||
},
|
||||
twitter: {
|
||||
card: 'summary_large_image',
|
||||
title: content.seoTitle,
|
||||
description: content.seoDescription,
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
export default async function IndustryDetailPage({ params }: { params: Promise<Params> }) {
|
||||
const { slug } = await params;
|
||||
const industry = getIndustryBySlug(slug);
|
||||
if (!industry) notFound();
|
||||
const content = INDUSTRY_PAGES[industry.id];
|
||||
if (!content) notFound();
|
||||
|
||||
const accent = industry.accent;
|
||||
|
||||
return (
|
||||
<>
|
||||
<Navbar />
|
||||
|
||||
<main style={{ paddingTop: 'clamp(5rem, 9vw, 7rem)', paddingBottom: 'clamp(2rem, 5vw, 4rem)' }}>
|
||||
<div className="container-wide" style={{ display: 'flex', flexDirection: 'column', gap: 'clamp(2.5rem, 5vw, 4rem)' }}>
|
||||
{/* BREADCRUMBS */}
|
||||
<nav aria-label="Breadcrumb" className="ip-breadcrumbs">
|
||||
<ol>
|
||||
<li><Link href="/">Home</Link></li>
|
||||
<li aria-hidden><ChevronRight size={12} /></li>
|
||||
<li><Link href="/industries/">Industries</Link></li>
|
||||
<li aria-hidden><ChevronRight size={12} /></li>
|
||||
<li aria-current="page">{industry.name}</li>
|
||||
</ol>
|
||||
</nav>
|
||||
|
||||
{/* HERO */}
|
||||
<MotionSection>
|
||||
<section className="ip-hero" style={{ ['--acc' as string]: accent }}>
|
||||
<div className="ip-hero-glow" aria-hidden />
|
||||
<div className="ip-hero-grid" aria-hidden />
|
||||
<div className="ip-hero-inner">
|
||||
<div className="ip-hero-copy">
|
||||
<span className="eyebrow">{industry.name}</span>
|
||||
<h1 className="ip-hero-title">
|
||||
<span className="text-gradient">{content.heroTitle}</span>
|
||||
</h1>
|
||||
<p className="ip-hero-sub">{content.heroSubtitle}</p>
|
||||
<div className="ip-hero-actions">
|
||||
<CTAButton href="/book-demo/" variant="primary" size="lg" arrow="up-right">
|
||||
Book a Demo
|
||||
</CTAButton>
|
||||
<CTAButton href="/contact/" variant="secondary" size="lg" arrow="right">
|
||||
Talk to Our Team
|
||||
</CTAButton>
|
||||
</div>
|
||||
</div>
|
||||
<aside className="ip-hero-card" aria-hidden>
|
||||
<div className="ip-hero-card-tag">YSL · UAE</div>
|
||||
<div className="ip-hero-card-icon">
|
||||
<Bot size={40} strokeWidth={1.4} />
|
||||
</div>
|
||||
<div className="ip-hero-card-meta">
|
||||
<span>Industry</span>
|
||||
<strong>{industry.name}</strong>
|
||||
</div>
|
||||
</aside>
|
||||
</div>
|
||||
</section>
|
||||
</MotionSection>
|
||||
|
||||
{/* PROBLEM */}
|
||||
<MotionSection>
|
||||
<section className="ip-block">
|
||||
<header className="ip-block-head">
|
||||
<span className="eyebrow">The challenge</span>
|
||||
<h2 className="ip-block-title">Where today’s operations break down.</h2>
|
||||
</header>
|
||||
<ul className="ip-problems" role="list">
|
||||
{content.problemPoints.map((p, i) => (
|
||||
<li key={i} className="ip-problem">
|
||||
<span className="ip-problem-num">{String(i + 1).padStart(2, '0')}</span>
|
||||
<p>{p}</p>
|
||||
</li>
|
||||
))}
|
||||
</ul>
|
||||
</section>
|
||||
</MotionSection>
|
||||
|
||||
{/* SOLUTIONS */}
|
||||
<MotionSection>
|
||||
<section className="ip-block" style={{ ['--acc' as string]: accent }}>
|
||||
<header className="ip-block-head">
|
||||
<span className="eyebrow">Recommended robot solutions</span>
|
||||
<h2 className="ip-block-title">The right robot families for {industry.name.toLowerCase()}.</h2>
|
||||
</header>
|
||||
<div className="ip-solutions">
|
||||
{content.solutions.map((s, i) => {
|
||||
const Icon = ICONS[s.iconKey] ?? Cog;
|
||||
return (
|
||||
<article key={i} className="ip-solution">
|
||||
<span className="ip-solution-icon" aria-hidden>
|
||||
<Icon size={20} strokeWidth={1.6} />
|
||||
</span>
|
||||
<h3>{s.title}</h3>
|
||||
<p>{s.body}</p>
|
||||
</article>
|
||||
);
|
||||
})}
|
||||
</div>
|
||||
</section>
|
||||
</MotionSection>
|
||||
|
||||
{/* USE CASES */}
|
||||
<MotionSection>
|
||||
<section className="ip-block">
|
||||
<header className="ip-block-head">
|
||||
<span className="eyebrow">Use cases</span>
|
||||
<h2 className="ip-block-title">Where these robots earn their keep.</h2>
|
||||
</header>
|
||||
<ul className="ip-usecases" role="list">
|
||||
{content.useCases.map((u, i) => (
|
||||
<li key={i} className="ip-usecase">
|
||||
<span className="ip-usecase-bullet" aria-hidden />
|
||||
<span>{u}</span>
|
||||
</li>
|
||||
))}
|
||||
</ul>
|
||||
</section>
|
||||
</MotionSection>
|
||||
|
||||
{/* BENEFITS */}
|
||||
<MotionSection>
|
||||
<section className="ip-block">
|
||||
<header className="ip-block-head">
|
||||
<span className="eyebrow">Business benefits</span>
|
||||
<h2 className="ip-block-title">What this changes for your operation.</h2>
|
||||
</header>
|
||||
<div className="ip-benefits">
|
||||
{content.benefits.map((b, i) => (
|
||||
<div key={i} className="ip-benefit">
|
||||
<h3>{b.title}</h3>
|
||||
<p>{b.body}</p>
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</section>
|
||||
</MotionSection>
|
||||
|
||||
{/* SUGGESTED ROBOTS */}
|
||||
<MotionSection>
|
||||
<section className="ip-block" style={{ ['--acc' as string]: accent }}>
|
||||
<header className="ip-block-head">
|
||||
<span className="eyebrow">Suggested robots</span>
|
||||
<h2 className="ip-block-title">Brands and families we deploy for this sector.</h2>
|
||||
</header>
|
||||
<div className="ip-robots">
|
||||
{content.suggestedRobots.map((r, i) => (
|
||||
<article key={i} className="ip-robot">
|
||||
<span className="ip-robot-brand">{r.brand}</span>
|
||||
<h3>{r.family}</h3>
|
||||
<p>{r.body}</p>
|
||||
<Link href="/robots/" className="ip-robot-link">
|
||||
Browse robots <ArrowRight size={13} strokeWidth={2} />
|
||||
</Link>
|
||||
</article>
|
||||
))}
|
||||
</div>
|
||||
</section>
|
||||
</MotionSection>
|
||||
|
||||
{/* CTA */}
|
||||
<MotionSection>
|
||||
<section className="ip-cta">
|
||||
<div className="ip-cta-glow" aria-hidden />
|
||||
<div className="ip-cta-inner">
|
||||
<div className="ip-cta-text">
|
||||
<span className="eyebrow">Next step</span>
|
||||
<h2 className="ip-cta-title">Find the right robot for your venue.</h2>
|
||||
<p>
|
||||
Tell us about your space, workflow, and goals. Our Dubai team will recommend the best-fit robotics solution and arrange a live demo or quotation.
|
||||
</p>
|
||||
</div>
|
||||
<div className="ip-cta-actions">
|
||||
<CTAButton href="/book-demo/" variant="primary" size="lg" arrow="up-right">
|
||||
Book a Live Demo
|
||||
</CTAButton>
|
||||
<CTAButton href="/contact/" variant="secondary" size="lg" arrow="right">
|
||||
Request UAE Quotation
|
||||
</CTAButton>
|
||||
<CTAButton
|
||||
href="https://wa.me/971500000000"
|
||||
external
|
||||
variant="ghost"
|
||||
size="lg"
|
||||
arrow="up-right"
|
||||
ariaLabel="Chat with YS Lootah Robotics on WhatsApp"
|
||||
>
|
||||
WhatsApp Us
|
||||
</CTAButton>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</MotionSection>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<FooterAndContact />
|
||||
|
||||
{/* eslint-disable react/no-unknown-property */}
|
||||
<style>{`
|
||||
.ip-breadcrumbs ol {
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
align-items: center;
|
||||
gap: 0.5rem;
|
||||
font-size: 0.72rem;
|
||||
letter-spacing: 0.18em;
|
||||
text-transform: uppercase;
|
||||
color: #8891C7;
|
||||
}
|
||||
.ip-breadcrumbs a {
|
||||
color: #8891C7;
|
||||
text-decoration: none;
|
||||
transition: color 0.25s;
|
||||
}
|
||||
.ip-breadcrumbs a:hover { color: #FFFFFF; }
|
||||
.ip-breadcrumbs li[aria-current="page"] { color: #FFFFFF; }
|
||||
.ip-breadcrumbs li[aria-hidden] { display: inline-flex; align-items: center; color: #4a4f63; }
|
||||
|
||||
/* HERO */
|
||||
.ip-hero {
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
border-radius: 24px;
|
||||
border: 1px solid rgba(74, 102, 216, 0.18);
|
||||
background:
|
||||
radial-gradient(ellipse 70% 100% at 0% 0%, rgba(58, 85, 196, 0.18), transparent 55%),
|
||||
linear-gradient(135deg, rgba(14, 13, 22, 0.92), rgba(6, 6, 10, 0.97));
|
||||
box-shadow: 0 30px 90px rgba(0, 0, 0, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.04);
|
||||
}
|
||||
.ip-hero-glow {
|
||||
position: absolute;
|
||||
width: 520px;
|
||||
height: 520px;
|
||||
border-radius: 999px;
|
||||
top: -180px;
|
||||
right: -160px;
|
||||
background: radial-gradient(circle, color-mix(in srgb, var(--acc) 35%, transparent), transparent 70%);
|
||||
filter: blur(110px);
|
||||
opacity: 0.6;
|
||||
pointer-events: none;
|
||||
}
|
||||
.ip-hero-grid {
|
||||
position: absolute;
|
||||
inset: 0;
|
||||
background:
|
||||
linear-gradient(rgba(74, 102, 216, 0.05) 1px, transparent 1px),
|
||||
linear-gradient(90deg, rgba(74, 102, 216, 0.05) 1px, transparent 1px);
|
||||
background-size: 56px 56px;
|
||||
mask-image: radial-gradient(ellipse 70% 90% at 30% 40%, #000 25%, transparent 80%);
|
||||
-webkit-mask-image: radial-gradient(ellipse 70% 90% at 30% 40%, #000 25%, transparent 80%);
|
||||
pointer-events: none;
|
||||
}
|
||||
.ip-hero-inner {
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
display: grid;
|
||||
grid-template-columns: minmax(0, 1fr);
|
||||
gap: clamp(1.5rem, 3vw, 2.5rem);
|
||||
padding: clamp(1.8rem, 4vw, 3.2rem);
|
||||
align-items: center;
|
||||
}
|
||||
.ip-hero-copy { display: flex; flex-direction: column; gap: 1rem; max-width: 640px; }
|
||||
.ip-hero-title {
|
||||
margin: 0;
|
||||
font-size: clamp(2rem, 5vw, 3.2rem);
|
||||
line-height: 1.05;
|
||||
font-weight: 300;
|
||||
letter-spacing: -0.03em;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
.ip-hero-title .text-gradient { font-weight: 500; }
|
||||
.ip-hero-sub {
|
||||
margin: 0;
|
||||
color: #DEE0F0;
|
||||
font-size: clamp(0.95rem, 1.8vw, 1.1rem);
|
||||
line-height: 1.65;
|
||||
}
|
||||
.ip-hero-actions { display: flex; flex-wrap: wrap; gap: 0.6rem; margin-top: 0.35rem; }
|
||||
|
||||
.ip-hero-card {
|
||||
display: none;
|
||||
position: relative;
|
||||
padding: 1.1rem 1.2rem;
|
||||
border-radius: 18px;
|
||||
border: 1px solid rgba(74, 102, 216, 0.22);
|
||||
background:
|
||||
radial-gradient(ellipse 80% 80% at 50% 0%, color-mix(in srgb, var(--acc) 18%, transparent), transparent 60%),
|
||||
linear-gradient(180deg, rgba(20, 19, 26, 0.85), rgba(8, 8, 12, 0.95));
|
||||
}
|
||||
.ip-hero-card-tag {
|
||||
font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
|
||||
font-size: 0.62rem;
|
||||
letter-spacing: 0.32em;
|
||||
font-weight: 800;
|
||||
color: #DEE0F0;
|
||||
}
|
||||
.ip-hero-card-icon {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
padding: 1.2rem 0;
|
||||
color: color-mix(in srgb, var(--acc) 75%, white);
|
||||
}
|
||||
.ip-hero-card-meta {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 0.2rem;
|
||||
padding-top: 0.6rem;
|
||||
border-top: 1px solid rgba(222, 224, 240, 0.08);
|
||||
}
|
||||
.ip-hero-card-meta span {
|
||||
font-size: 0.6rem;
|
||||
letter-spacing: 0.28em;
|
||||
text-transform: uppercase;
|
||||
color: #8891C7;
|
||||
font-weight: 700;
|
||||
}
|
||||
.ip-hero-card-meta strong { color: #FFFFFF; font-size: 0.95rem; font-weight: 600; }
|
||||
|
||||
@media (min-width: 920px) {
|
||||
.ip-hero-inner { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); }
|
||||
.ip-hero-card { display: block; }
|
||||
}
|
||||
|
||||
/* BLOCKS */
|
||||
.ip-block { display: flex; flex-direction: column; gap: clamp(1.1rem, 2vw, 1.5rem); }
|
||||
.ip-block-head { display: flex; flex-direction: column; gap: 0.5rem; max-width: 720px; }
|
||||
.ip-block-title {
|
||||
margin: 0;
|
||||
font-size: clamp(1.5rem, 3vw, 2.1rem);
|
||||
font-weight: 400;
|
||||
letter-spacing: -0.02em;
|
||||
color: #FFFFFF;
|
||||
line-height: 1.15;
|
||||
}
|
||||
|
||||
/* PROBLEMS */
|
||||
.ip-problems {
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
display: grid;
|
||||
grid-template-columns: minmax(0, 1fr);
|
||||
gap: 0.75rem;
|
||||
}
|
||||
@media (min-width: 720px) {
|
||||
.ip-problems { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
|
||||
}
|
||||
.ip-problem {
|
||||
display: grid;
|
||||
grid-template-columns: auto minmax(0, 1fr);
|
||||
gap: 0.85rem;
|
||||
padding: 1rem 1.1rem;
|
||||
border-radius: 16px;
|
||||
border: 1px solid rgba(222, 224, 240, 0.08);
|
||||
background: linear-gradient(135deg, rgba(20, 19, 26, 0.72), rgba(10, 10, 14, 0.92));
|
||||
}
|
||||
.ip-problem-num {
|
||||
font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
|
||||
font-size: 0.68rem;
|
||||
letter-spacing: 0.22em;
|
||||
font-weight: 800;
|
||||
color: #8891C7;
|
||||
padding-top: 0.15rem;
|
||||
}
|
||||
.ip-problem p {
|
||||
margin: 0;
|
||||
color: #DEE0F0;
|
||||
font-size: 0.92rem;
|
||||
line-height: 1.55;
|
||||
}
|
||||
|
||||
/* SOLUTIONS */
|
||||
.ip-solutions {
|
||||
display: grid;
|
||||
grid-template-columns: minmax(0, 1fr);
|
||||
gap: 1rem;
|
||||
}
|
||||
@media (min-width: 640px) { .ip-solutions { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
|
||||
@media (min-width: 1100px) { .ip-solutions { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
|
||||
|
||||
.ip-solution {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 0.55rem;
|
||||
padding: 1.1rem 1.15rem 1.15rem;
|
||||
border-radius: 16px;
|
||||
border: 1px solid rgba(222, 224, 240, 0.10);
|
||||
background:
|
||||
radial-gradient(ellipse 80% 60% at 100% 0%, color-mix(in srgb, var(--acc) 14%, transparent), transparent 60%),
|
||||
linear-gradient(180deg, rgba(22, 21, 30, 0.88), rgba(10, 10, 14, 0.95));
|
||||
transition: border-color 0.3s, transform 0.3s, box-shadow 0.3s;
|
||||
}
|
||||
.ip-solution:hover {
|
||||
transform: translateY(-2px);
|
||||
border-color: rgba(74, 102, 216, 0.4);
|
||||
box-shadow: 0 16px 36px rgba(0, 0, 0, 0.5), 0 0 22px rgba(58, 85, 196, 0.18);
|
||||
}
|
||||
.ip-solution-icon {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
width: 38px;
|
||||
height: 38px;
|
||||
border-radius: 11px;
|
||||
color: color-mix(in srgb, var(--acc) 80%, white);
|
||||
border: 1px solid color-mix(in srgb, var(--acc) 30%, transparent);
|
||||
background: color-mix(in srgb, var(--acc) 12%, rgba(14, 13, 18, 0.55));
|
||||
}
|
||||
.ip-solution h3 {
|
||||
margin: 0;
|
||||
font-size: 1rem;
|
||||
font-weight: 600;
|
||||
color: #FFFFFF;
|
||||
letter-spacing: -0.005em;
|
||||
}
|
||||
.ip-solution p {
|
||||
margin: 0;
|
||||
color: #C9CCDE;
|
||||
font-size: 0.85rem;
|
||||
line-height: 1.55;
|
||||
}
|
||||
|
||||
/* USE CASES */
|
||||
.ip-usecases {
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
display: grid;
|
||||
grid-template-columns: minmax(0, 1fr);
|
||||
gap: 0.6rem;
|
||||
}
|
||||
@media (min-width: 720px) {
|
||||
.ip-usecases { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; }
|
||||
}
|
||||
.ip-usecase {
|
||||
display: grid;
|
||||
grid-template-columns: 10px minmax(0, 1fr);
|
||||
align-items: center;
|
||||
gap: 0.8rem;
|
||||
padding: 0.85rem 1rem;
|
||||
border-radius: 14px;
|
||||
border: 1px solid rgba(222, 224, 240, 0.08);
|
||||
background: linear-gradient(135deg, rgba(18, 18, 26, 0.7), rgba(8, 8, 12, 0.88));
|
||||
color: #DEE0F0;
|
||||
font-size: 0.92rem;
|
||||
}
|
||||
.ip-usecase-bullet {
|
||||
width: 8px;
|
||||
height: 8px;
|
||||
border-radius: 999px;
|
||||
background: #4a66d8;
|
||||
box-shadow: 0 0 12px rgba(74, 102, 216, 0.7);
|
||||
}
|
||||
|
||||
/* BENEFITS */
|
||||
.ip-benefits {
|
||||
display: grid;
|
||||
grid-template-columns: minmax(0, 1fr);
|
||||
gap: 0.85rem;
|
||||
}
|
||||
@media (min-width: 640px) { .ip-benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
|
||||
@media (min-width: 1100px) { .ip-benefits { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
|
||||
.ip-benefit {
|
||||
padding: 1.1rem 1.15rem;
|
||||
border-radius: 16px;
|
||||
border: 1px solid rgba(222, 224, 240, 0.08);
|
||||
background: linear-gradient(135deg, rgba(20, 19, 26, 0.78), rgba(10, 10, 14, 0.92));
|
||||
}
|
||||
.ip-benefit h3 {
|
||||
margin: 0 0 0.4rem;
|
||||
font-size: 0.95rem;
|
||||
font-weight: 600;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
.ip-benefit p {
|
||||
margin: 0;
|
||||
color: #C9CCDE;
|
||||
font-size: 0.85rem;
|
||||
line-height: 1.5;
|
||||
}
|
||||
|
||||
/* SUGGESTED ROBOTS */
|
||||
.ip-robots {
|
||||
display: grid;
|
||||
grid-template-columns: minmax(0, 1fr);
|
||||
gap: 0.95rem;
|
||||
}
|
||||
@media (min-width: 720px) { .ip-robots { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
|
||||
@media (min-width: 1100px) { .ip-robots { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
|
||||
|
||||
.ip-robot {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 0.5rem;
|
||||
padding: 1.15rem 1.2rem 1.1rem;
|
||||
border-radius: 16px;
|
||||
border: 1px solid rgba(74, 102, 216, 0.22);
|
||||
background:
|
||||
radial-gradient(ellipse 80% 60% at 100% 0%, color-mix(in srgb, var(--acc) 18%, transparent), transparent 60%),
|
||||
linear-gradient(180deg, rgba(22, 21, 30, 0.9), rgba(10, 10, 14, 0.95));
|
||||
}
|
||||
.ip-robot-brand {
|
||||
font-size: 0.6rem;
|
||||
letter-spacing: 0.3em;
|
||||
text-transform: uppercase;
|
||||
font-weight: 800;
|
||||
color: color-mix(in srgb, var(--acc) 70%, white);
|
||||
}
|
||||
.ip-robot h3 {
|
||||
margin: 0;
|
||||
font-size: 1.05rem;
|
||||
font-weight: 600;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
.ip-robot p {
|
||||
margin: 0;
|
||||
color: #C9CCDE;
|
||||
font-size: 0.88rem;
|
||||
line-height: 1.55;
|
||||
flex: 1;
|
||||
}
|
||||
.ip-robot-link {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
gap: 0.45rem;
|
||||
margin-top: 0.5rem;
|
||||
font-size: 0.8rem;
|
||||
font-weight: 600;
|
||||
color: #DEE0F0;
|
||||
text-decoration: none;
|
||||
transition: color 0.25s, gap 0.25s;
|
||||
}
|
||||
.ip-robot-link:hover { color: #FFFFFF; gap: 0.7rem; }
|
||||
|
||||
/* CTA */
|
||||
.ip-cta {
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
border-radius: 24px;
|
||||
border: 1px solid rgba(74, 102, 216, 0.22);
|
||||
background:
|
||||
radial-gradient(ellipse 60% 100% at 100% 0%, rgba(58, 85, 196, 0.18), transparent 60%),
|
||||
linear-gradient(135deg, rgba(18, 16, 28, 0.92), rgba(8, 8, 12, 0.96));
|
||||
box-shadow: 0 30px 90px rgba(0, 0, 0, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.04);
|
||||
}
|
||||
.ip-cta-glow {
|
||||
position: absolute;
|
||||
width: 480px;
|
||||
height: 480px;
|
||||
border-radius: 999px;
|
||||
top: -160px;
|
||||
left: -160px;
|
||||
background: radial-gradient(circle, rgba(74, 102, 216, 0.4), transparent 70%);
|
||||
filter: blur(100px);
|
||||
opacity: 0.55;
|
||||
pointer-events: none;
|
||||
}
|
||||
.ip-cta-inner {
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
display: grid;
|
||||
grid-template-columns: minmax(0, 1fr);
|
||||
gap: clamp(1.2rem, 3vw, 2rem);
|
||||
padding: clamp(1.6rem, 3.5vw, 2.6rem);
|
||||
align-items: center;
|
||||
}
|
||||
@media (min-width: 900px) {
|
||||
.ip-cta-inner { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); }
|
||||
}
|
||||
.ip-cta-text { display: flex; flex-direction: column; gap: 0.6rem; max-width: 560px; }
|
||||
.ip-cta-title {
|
||||
margin: 0;
|
||||
font-size: clamp(1.6rem, 3vw, 2.2rem);
|
||||
font-weight: 400;
|
||||
letter-spacing: -0.02em;
|
||||
color: #FFFFFF;
|
||||
line-height: 1.1;
|
||||
}
|
||||
.ip-cta-text p { margin: 0; color: #DEE0F0; font-size: 0.95rem; line-height: 1.6; }
|
||||
.ip-cta-actions {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 0.55rem;
|
||||
justify-content: flex-start;
|
||||
}
|
||||
@media (min-width: 900px) {
|
||||
.ip-cta-actions { justify-content: flex-end; }
|
||||
}
|
||||
@media (max-width: 520px) {
|
||||
.ip-cta-actions :global(.cta-btn) { width: 100%; justify-content: space-between; }
|
||||
.ip-hero-actions :global(.cta-btn) { width: 100%; justify-content: space-between; }
|
||||
}
|
||||
`}</style>
|
||||
</>
|
||||
);
|
||||
}
|
||||
@ -96,8 +96,9 @@ export function IndustryUseCases({ limit }: { limit?: number }) {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
display: grid;
|
||||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||||
grid-template-columns: minmax(0, 1fr);
|
||||
gap: 0.55rem;
|
||||
margin-bottom: clamp(0.5rem, 1.5vw, 1rem);
|
||||
}
|
||||
.iu-stat {
|
||||
position: relative;
|
||||
@ -167,10 +168,13 @@ export function IndustryUseCases({ limit }: { limit?: number }) {
|
||||
gap: 1rem;
|
||||
}
|
||||
|
||||
@media (min-width: 760px) {
|
||||
.iu-stats { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.7rem; }
|
||||
@media (min-width: 520px) {
|
||||
.iu-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.6rem; }
|
||||
.iu-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.1rem; }
|
||||
}
|
||||
@media (min-width: 820px) {
|
||||
.iu-stats { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.7rem; }
|
||||
}
|
||||
@media (min-width: 1000px) {
|
||||
.iu-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.2rem; }
|
||||
}
|
||||
|
||||
@ -26,7 +26,7 @@ export const INDUSTRIES: Industry[] = [
|
||||
},
|
||||
{
|
||||
id: 'restaurants',
|
||||
slug: 'restaurants',
|
||||
slug: 'restaurants-cafes',
|
||||
name: 'Restaurants & Cafés',
|
||||
problem: 'Peak-hour service quality drops as servers shuttle trays across the floor.',
|
||||
solution: 'Delivery robots like BellaBot and KettyBot move food fast and reliably.',
|
||||
@ -37,7 +37,7 @@ export const INDUSTRIES: Industry[] = [
|
||||
},
|
||||
{
|
||||
id: 'hotels',
|
||||
slug: 'hotels',
|
||||
slug: 'hotels-resorts',
|
||||
name: 'Hotels & Resorts',
|
||||
problem: 'Room service and back-of-house logistics burn operational hours.',
|
||||
solution: 'Multi-floor delivery robots and humanoid concierge experiences.',
|
||||
@ -81,7 +81,7 @@ export const INDUSTRIES: Industry[] = [
|
||||
},
|
||||
{
|
||||
id: 'security',
|
||||
slug: 'security',
|
||||
slug: 'security-surveillance',
|
||||
name: 'Security & Surveillance',
|
||||
problem: 'Manual patrols are repetitive, costly, and miss anomalies after hours.',
|
||||
solution: 'Quadruped robots like Unitree Go2 and B2 patrol autonomously.',
|
||||
@ -92,7 +92,7 @@ export const INDUSTRIES: Industry[] = [
|
||||
},
|
||||
{
|
||||
id: 'warehouses',
|
||||
slug: 'warehouses',
|
||||
slug: 'warehouses-logistics',
|
||||
name: 'Warehouses & Logistics',
|
||||
problem: 'Inventory transport, picking, and inspection take human hours that scale poorly.',
|
||||
solution: 'Quadruped inspection robots and autonomous delivery platforms.',
|
||||
|
||||
342
src/data/industry-pages.ts
Normal file
342
src/data/industry-pages.ts
Normal file
@ -0,0 +1,342 @@
|
||||
export type IndustrySolution = {
|
||||
title: string;
|
||||
body: string;
|
||||
iconKey:
|
||||
| 'service'
|
||||
| 'delivery'
|
||||
| 'cleaning'
|
||||
| 'humanoid'
|
||||
| 'quadruped'
|
||||
| 'sensor'
|
||||
| 'inspect'
|
||||
| 'platform'
|
||||
| 'guide'
|
||||
| 'queue'
|
||||
| 'host'
|
||||
| 'tray';
|
||||
};
|
||||
|
||||
export type SuggestedRobot = {
|
||||
brand: 'Pudu' | 'Unitree';
|
||||
family: string;
|
||||
body: string;
|
||||
};
|
||||
|
||||
export type IndustryPageContent = {
|
||||
heroTitle: string;
|
||||
heroSubtitle: string;
|
||||
problemPoints: string[];
|
||||
solutions: IndustrySolution[];
|
||||
useCases: string[];
|
||||
benefits: { title: string; body: string }[];
|
||||
suggestedRobots: SuggestedRobot[];
|
||||
seoTitle: string;
|
||||
seoDescription: string;
|
||||
};
|
||||
|
||||
export const INDUSTRY_PAGES: Record<string, IndustryPageContent> = {
|
||||
hospitality: {
|
||||
heroTitle: 'Robotics for premium guest experiences.',
|
||||
heroSubtitle:
|
||||
'Deploy service, delivery, cleaning, and concierge robots across UAE hospitality venues — from lounges and clubs to high-end hotels.',
|
||||
problemPoints: [
|
||||
'Guest service teams are stretched thin during peak hours and events.',
|
||||
'Repetitive runs between back-of-house and guest areas burn staff energy.',
|
||||
'Guest expectations for fast, polished moments keep rising.',
|
||||
'Maintaining service consistency across shifts is difficult and costly.',
|
||||
],
|
||||
solutions: [
|
||||
{ title: 'Service robots', body: 'Greet guests, deliver items, and assist between zones with a polished, branded persona.', iconKey: 'service' },
|
||||
{ title: 'Delivery robots', body: 'Move trays, room amenities, and supplies between floors and back-of-house efficiently.', iconKey: 'delivery' },
|
||||
{ title: 'Cleaning robots', body: 'Maintain lobbies, corridors, and back areas during overnight or quiet windows.', iconKey: 'cleaning' },
|
||||
{ title: 'Humanoid concierge', body: 'Signature welcome and activation moments that anchor the venue brand.', iconKey: 'humanoid' },
|
||||
],
|
||||
useCases: [
|
||||
'Lobby greeting and guest direction',
|
||||
'In-house item delivery between zones',
|
||||
'Overnight floor cleaning and disinfection',
|
||||
'VIP activations and brand moments',
|
||||
],
|
||||
benefits: [
|
||||
{ title: 'Consistent service', body: 'Service quality stays steady across shifts and peak nights.' },
|
||||
{ title: 'Lower repetitive load', body: 'Staff spend less time on transport and more on guest care.' },
|
||||
{ title: 'Premium positioning', body: 'Branded robotic moments reinforce a high-end identity.' },
|
||||
{ title: 'Always-on coverage', body: 'Routine work continues smoothly during off-hours.' },
|
||||
],
|
||||
suggestedRobots: [
|
||||
{ brand: 'Pudu', family: 'Service & delivery lineup', body: 'BellaBot, KettyBot, and FlashBot family for service-floor and multi-zone delivery.' },
|
||||
{ brand: 'Pudu', family: 'Cleaning lineup', body: 'Commercial cleaning platforms for lobbies, corridors, and back-of-house.' },
|
||||
{ brand: 'Unitree', family: 'Humanoid platforms', body: 'G1 and H1 humanoids for concierge moments and brand activations.' },
|
||||
],
|
||||
seoTitle: 'Hospitality Robots in UAE | YS Lootah Robotics',
|
||||
seoDescription:
|
||||
'Service, delivery, cleaning, and concierge robots for hotels, lounges, and hospitality venues across the UAE. Exclusive UAE access to Pudu and Unitree.',
|
||||
},
|
||||
|
||||
restaurants: {
|
||||
heroTitle: 'Faster, smoother restaurant service.',
|
||||
heroSubtitle:
|
||||
'Delivery and greeting robots that support peak service, reduce walking distance, and elevate the dining experience in UAE F&B venues.',
|
||||
problemPoints: [
|
||||
'Servers spend most of the shift walking trays back and forth.',
|
||||
'Peak-hour quality drops as floor coverage thins.',
|
||||
'High turnover impacts service consistency across the week.',
|
||||
'Standout moments are hard to engineer in a busy dining room.',
|
||||
],
|
||||
solutions: [
|
||||
{ title: 'Food delivery robots', body: 'Bring dishes from kitchen to table reliably during full service.', iconKey: 'delivery' },
|
||||
{ title: 'Tray-runner robots', body: 'Multi-tray runs designed for high-traffic floors and quick turns.', iconKey: 'tray' },
|
||||
{ title: 'Greeting / host robots', body: 'Welcome guests, manage queues, and walk parties to their tables.', iconKey: 'host' },
|
||||
{ title: 'Promo and queue robots', body: 'Engage waiting guests and run small promos during wait times.', iconKey: 'queue' },
|
||||
],
|
||||
useCases: [
|
||||
'Kitchen-to-table dish delivery',
|
||||
'Tray return and floor clearing',
|
||||
'Greeting and queue management at entrance',
|
||||
'Birthday and celebration moments',
|
||||
],
|
||||
benefits: [
|
||||
{ title: 'Faster table turns', body: 'Shorter wait times and quicker service rounds.' },
|
||||
{ title: 'Less staff fatigue', body: 'Servers walk less, communicate more, and focus on guests.' },
|
||||
{ title: 'Memorable moments', body: 'Distinctive guest experiences that drive word of mouth.' },
|
||||
{ title: 'Brand upgrade', body: 'Visible signal that the venue is modern and forward-looking.' },
|
||||
],
|
||||
suggestedRobots: [
|
||||
{ brand: 'Pudu', family: 'BellaBot', body: 'Multi-tray delivery robot designed for restaurant floors.' },
|
||||
{ brand: 'Pudu', family: 'KettyBot', body: 'Greeter and delivery hybrid for entrances and small floors.' },
|
||||
{ brand: 'Pudu', family: 'FlashBot Mini', body: 'Compact autonomous delivery for tight venue layouts.' },
|
||||
],
|
||||
seoTitle: 'Restaurant & Café Robots in UAE | YS Lootah Robotics',
|
||||
seoDescription:
|
||||
'Delivery, host, and tray-runner robots for UAE restaurants, cafés, and F&B venues. Faster service, lower staff fatigue, premium positioning.',
|
||||
},
|
||||
|
||||
hotels: {
|
||||
heroTitle: 'Concierge-grade robotics for hotels and resorts.',
|
||||
heroSubtitle:
|
||||
'Multi-floor delivery, cleaning, and humanoid moments designed for premium UAE hospitality operations.',
|
||||
problemPoints: [
|
||||
'Room service and back-of-house logistics consume operational hours.',
|
||||
'Multi-floor delivery is slow and labor-intensive.',
|
||||
'Premium guest moments are hard to scale consistently.',
|
||||
'Housekeeping and cleaning cycles strain night-shift teams.',
|
||||
],
|
||||
solutions: [
|
||||
{ title: 'Multi-floor delivery robots', body: 'Move amenities, linens, and items between rooms and floors.', iconKey: 'delivery' },
|
||||
{ title: 'Room service robots', body: 'Discreet delivery to suites and corridors without disturbing other guests.', iconKey: 'service' },
|
||||
{ title: 'Cleaning robots', body: 'Quiet, automated cleaning for lobbies, corridors, and back areas.', iconKey: 'cleaning' },
|
||||
{ title: 'Humanoid concierge', body: 'Signature welcomes, activations, and press-worthy guest moments.', iconKey: 'humanoid' },
|
||||
],
|
||||
useCases: [
|
||||
'Toiletries and amenity delivery to suites',
|
||||
'Room-service tray runs across floors',
|
||||
'Lobby and corridor cleaning between peaks',
|
||||
'VIP welcomes and brand events',
|
||||
],
|
||||
benefits: [
|
||||
{ title: 'Reduced overhead', body: 'Less repetitive movement across floors and zones.' },
|
||||
{ title: 'Faster response', body: 'Guest requests are fulfilled with less delay.' },
|
||||
{ title: 'Signature moments', body: 'Memorable touches that lift the property brand.' },
|
||||
{ title: 'Calmer nights', body: 'Lower fatigue on housekeeping and night-shift teams.' },
|
||||
],
|
||||
suggestedRobots: [
|
||||
{ brand: 'Pudu', family: 'FlashBot family', body: 'Multi-floor autonomous delivery for hotel operations.' },
|
||||
{ brand: 'Pudu', family: 'Cleaning lineup', body: 'CC1 and SH1-class platforms for hotel cleaning routines.' },
|
||||
{ brand: 'Unitree', family: 'G1 / H1 humanoids', body: 'Premium concierge moments and PR-worthy activations.' },
|
||||
],
|
||||
seoTitle: 'Hotel & Resort Robots in UAE | YS Lootah Robotics',
|
||||
seoDescription:
|
||||
'Multi-floor delivery, cleaning, and humanoid concierge robots for hotels and resorts across the UAE. Local Dubai support and deployment.',
|
||||
},
|
||||
|
||||
malls: {
|
||||
heroTitle: 'Robotics for high-traffic retail environments.',
|
||||
heroSubtitle:
|
||||
'Cleaning, service, security, and activation robots tuned for UAE malls, retail flagships, and large public venues.',
|
||||
problemPoints: [
|
||||
'Large floor areas are hard to clean and patrol consistently.',
|
||||
'Brand activations need standout, repeatable moments.',
|
||||
'Wayfinding and basic service stretch the operations team.',
|
||||
'Night security coverage is costly and uneven.',
|
||||
],
|
||||
solutions: [
|
||||
{ title: 'Cleaning robots', body: 'Continuous floor coverage during off-peak hours and overnights.', iconKey: 'cleaning' },
|
||||
{ title: 'Service & wayfinding robots', body: 'Help shoppers find stores, answer basic queries, and guide flows.', iconKey: 'guide' },
|
||||
{ title: 'Humanoid activation robots', body: 'Brand events, photo moments, openings, and seasonal campaigns.', iconKey: 'humanoid' },
|
||||
{ title: 'Quadruped security robots', body: 'Inspection and perimeter coverage after closing.', iconKey: 'quadruped' },
|
||||
],
|
||||
useCases: [
|
||||
'Overnight floor cleaning and disinfection',
|
||||
'Wayfinding for renovated or new layouts',
|
||||
'Activations for store openings and launches',
|
||||
'Patrol rounds after operating hours',
|
||||
],
|
||||
benefits: [
|
||||
{ title: 'Consistent cleanliness', body: 'Standards stay uniform across large floor areas.' },
|
||||
{ title: 'Share-worthy moments', body: 'Activations that generate organic social content.' },
|
||||
{ title: 'Lower repetitive load', body: 'Cleaning and patrol staff focus on higher-value work.' },
|
||||
{ title: 'Continuous monitoring', body: 'Night coverage that does not depend on additional headcount.' },
|
||||
],
|
||||
suggestedRobots: [
|
||||
{ brand: 'Pudu', family: 'Cleaning lineup', body: 'Floor-cleaning robots designed for large commercial spaces.' },
|
||||
{ brand: 'Pudu', family: 'Service & greeter robots', body: 'KettyBot-class platforms for wayfinding and engagement.' },
|
||||
{ brand: 'Unitree', family: 'Go2 / B2 quadrupeds', body: 'Autonomous patrol and inspection across mall facilities.' },
|
||||
{ brand: 'Unitree', family: 'Humanoid platforms', body: 'G1 and H1 for retail activations and brand moments.' },
|
||||
],
|
||||
seoTitle: 'Shopping Mall Robots in UAE | YS Lootah Robotics',
|
||||
seoDescription:
|
||||
'Cleaning, service, activation, and patrol robots for UAE shopping malls and retail flagships. Pudu and Unitree, deployed and supported locally.',
|
||||
},
|
||||
|
||||
healthcare: {
|
||||
heroTitle: 'Autonomous robotics for healthcare operations.',
|
||||
heroSubtitle:
|
||||
'Transport supplies, meals, and medication around UAE clinics and hospitals — so clinicians can focus on patient care.',
|
||||
problemPoints: [
|
||||
'Clinical staff lose hours to non-clinical transport tasks.',
|
||||
'Internal logistics across floors slow down service delivery.',
|
||||
'Cleaning frequency must stay high without burning out teams.',
|
||||
'Visitor flow and guidance load reception and front desks.',
|
||||
],
|
||||
solutions: [
|
||||
{ title: 'Delivery robots', body: 'Autonomous transport of meals, linens, and routine supplies.', iconKey: 'delivery' },
|
||||
{ title: 'Medication-route robots', body: 'Predictable, traceable internal runs between pharmacy and wards.', iconKey: 'platform' },
|
||||
{ title: 'Cleaning robots', body: 'Routine floor cleaning between shifts and patient cycles.', iconKey: 'cleaning' },
|
||||
{ title: 'Visitor guidance robots', body: 'Direct visitors to wards, clinics, and waiting areas.', iconKey: 'guide' },
|
||||
],
|
||||
useCases: [
|
||||
'Pharmacy-to-ward medication delivery',
|
||||
'Meal trays to patient floors',
|
||||
'Linen and supply runs between wings',
|
||||
'Visitor wayfinding in large facilities',
|
||||
],
|
||||
benefits: [
|
||||
{ title: 'More bedside time', body: 'Clinicians spend more time on patient care, not transport.' },
|
||||
{ title: 'Predictable logistics', body: 'Internal runs become consistent and traceable.' },
|
||||
{ title: 'Lower contamination risk', body: 'Reduced cross-handling on routine routes.' },
|
||||
{ title: 'Less strain', body: 'Support teams cover repetitive work with less fatigue.' },
|
||||
],
|
||||
suggestedRobots: [
|
||||
{ brand: 'Pudu', family: 'FlashBot family', body: 'Autonomous internal delivery for hospital operations.' },
|
||||
{ brand: 'Pudu', family: 'Cleaning lineup', body: 'CC1 and SH1-class platforms for healthcare environments.' },
|
||||
{ brand: 'Pudu', family: 'KettyBot', body: 'Visitor reception and basic wayfinding at entrances.' },
|
||||
],
|
||||
seoTitle: 'Healthcare Robots in UAE | YS Lootah Robotics',
|
||||
seoDescription:
|
||||
'Autonomous delivery, cleaning, and visitor-guidance robots for UAE clinics, hospitals, and healthcare networks. Local support from Dubai.',
|
||||
},
|
||||
|
||||
education: {
|
||||
heroTitle: 'Hands-on robotics for STEM and innovation.',
|
||||
heroSubtitle:
|
||||
'Humanoid and quadruped robots that bring AI, programming, and modern robotics into UAE schools, universities, and innovation labs.',
|
||||
problemPoints: [
|
||||
'STEM curricula need tangible robotics platforms for AI and motion learning.',
|
||||
'Schools want flagship innovation moments and visible identity.',
|
||||
'Teachers need approachable platforms for hands-on labs.',
|
||||
'Recruiting top STEM students depends on signature equipment.',
|
||||
],
|
||||
solutions: [
|
||||
{ title: 'Humanoid robots', body: 'General-purpose platforms for AI, motion, and human-robot interaction labs.', iconKey: 'humanoid' },
|
||||
{ title: 'Quadruped robots', body: 'Programmable platforms for autonomy, locomotion, and research projects.', iconKey: 'quadruped' },
|
||||
{ title: 'STEM-ready kits', body: 'Course-aligned robotics hardware for school labs and clubs.', iconKey: 'platform' },
|
||||
{ title: 'Open SDK platforms', body: 'Hands-on coding access for advanced students and researchers.', iconKey: 'sensor' },
|
||||
],
|
||||
useCases: [
|
||||
'AI and motion programming labs',
|
||||
'Robotics clubs and competitions',
|
||||
'Open days, expos, and school showcases',
|
||||
'Faculty research and dissertation projects',
|
||||
],
|
||||
benefits: [
|
||||
{ title: 'Future-ready skills', body: 'Students learn real-world robotics on real platforms.' },
|
||||
{ title: 'Signature programs', body: 'Flagship robotics labs attract talent and partnerships.' },
|
||||
{ title: 'Research uplift', body: 'Quadruped and humanoid platforms support advanced research.' },
|
||||
{ title: 'Visible innovation', body: 'Robotics labs position the institution as forward-looking.' },
|
||||
],
|
||||
suggestedRobots: [
|
||||
{ brand: 'Unitree', family: 'G1 humanoid', body: 'Research-friendly humanoid platform for education labs.' },
|
||||
{ brand: 'Unitree', family: 'Go2 / Go2 EDU', body: 'Programmable quadruped for autonomy and STEM coursework.' },
|
||||
{ brand: 'Unitree', family: 'B2 quadruped', body: 'Higher-capability platform for advanced research and projects.' },
|
||||
],
|
||||
seoTitle: 'Education & STEM Robots in UAE | YS Lootah Robotics',
|
||||
seoDescription:
|
||||
'Humanoid and quadruped robots for UAE schools, universities, and innovation labs. Hands-on AI and robotics education with local Dubai support.',
|
||||
},
|
||||
|
||||
security: {
|
||||
heroTitle: 'Autonomous patrol and inspection robots.',
|
||||
heroSubtitle:
|
||||
'Quadruped robots that patrol, inspect, and monitor critical UAE facilities — continuously and consistently.',
|
||||
problemPoints: [
|
||||
'Manual patrols are repetitive, costly, and uneven across shifts.',
|
||||
'Night coverage drops as fatigue sets in for guard teams.',
|
||||
'Hard-to-reach zones get inspected too rarely.',
|
||||
'Anomalies are missed without continuous facility monitoring.',
|
||||
],
|
||||
solutions: [
|
||||
{ title: 'Quadruped patrol robots', body: 'Autonomous routes across compounds, perimeters, and indoor sites.', iconKey: 'quadruped' },
|
||||
{ title: 'Inspection robots', body: 'Routine checks of utility rooms, plant areas, and risk zones.', iconKey: 'inspect' },
|
||||
{ title: 'Perimeter monitoring', body: 'Continuous outdoor coverage for sensitive boundaries.', iconKey: 'sensor' },
|
||||
{ title: 'Sensor-equipped platforms', body: 'Thermal, audio, and visual data captured on the move.', iconKey: 'platform' },
|
||||
],
|
||||
useCases: [
|
||||
'Overnight patrol across large compounds',
|
||||
'Routine inspection of plant and utility rooms',
|
||||
'Perimeter rounds for sensitive sites',
|
||||
'Incident response and remote live inspection',
|
||||
],
|
||||
benefits: [
|
||||
{ title: 'Continuous coverage', body: 'Routes run consistently across nights and shifts.' },
|
||||
{ title: 'Audit-ready logs', body: 'Run histories and sensor data are easy to review.' },
|
||||
{ title: 'Lower guard load', body: 'Repetitive walks shift to autonomous platforms.' },
|
||||
{ title: 'Innovation image', body: 'Visible signal that the operator runs a modern facility.' },
|
||||
],
|
||||
suggestedRobots: [
|
||||
{ brand: 'Unitree', family: 'Go2 quadruped', body: 'Versatile patrol and inspection platform for varied terrain.' },
|
||||
{ brand: 'Unitree', family: 'B2 quadruped', body: 'Heavy-duty platform for demanding inspection routes.' },
|
||||
{ brand: 'Unitree', family: 'Custom payloads', body: 'Sensor-equipped configurations for thermal and vision inspection.' },
|
||||
],
|
||||
seoTitle: 'Security & Surveillance Robots in UAE | YS Lootah Robotics',
|
||||
seoDescription:
|
||||
'Quadruped patrol, inspection, and perimeter robots for UAE facilities, compounds, and critical sites. Unitree platforms with local support.',
|
||||
},
|
||||
|
||||
warehouses: {
|
||||
heroTitle: 'Robotics for warehouse and facility operations.',
|
||||
heroSubtitle:
|
||||
'Inspection, transport, and monitoring robots that scale repetitive work across UAE logistics sites and industrial facilities.',
|
||||
problemPoints: [
|
||||
'Inventory and inspection routes scale poorly with human hours.',
|
||||
'Repetitive walks cause fatigue and tracking errors.',
|
||||
'Off-hours coverage is hard to sustain consistently.',
|
||||
'Equipment and asset monitoring is patchy without dedicated rounds.',
|
||||
],
|
||||
solutions: [
|
||||
{ title: 'Quadruped inspection robots', body: 'Predictable routes around aisles, racks, and plant areas.', iconKey: 'quadruped' },
|
||||
{ title: 'Autonomous transport platforms', body: 'Move goods between zones with consistent timing.', iconKey: 'platform' },
|
||||
{ title: 'Facility monitoring robots', body: 'Routine checks on assets, equipment, and environment.', iconKey: 'inspect' },
|
||||
{ title: 'Sensor-equipped platforms', body: 'Thermal and visual data captured during regular routes.', iconKey: 'sensor' },
|
||||
],
|
||||
useCases: [
|
||||
'Aisle and rack inspection rounds',
|
||||
'Goods movement between zones',
|
||||
'Equipment and asset condition checks',
|
||||
'Off-hours facility monitoring',
|
||||
],
|
||||
benefits: [
|
||||
{ title: 'Higher throughput', body: 'Routine routes run more often without extra headcount.' },
|
||||
{ title: 'Traceable monitoring', body: 'Inspection logs and data are predictable and reviewable.' },
|
||||
{ title: 'Lower repetitive load', body: 'Operators focus on higher-value work and edge cases.' },
|
||||
{ title: 'Safer routes', body: 'Risky or restricted zones can be covered remotely.' },
|
||||
],
|
||||
suggestedRobots: [
|
||||
{ brand: 'Unitree', family: 'Go2 / B2 quadrupeds', body: 'Autonomous inspection and patrol around facility zones.' },
|
||||
{ brand: 'Pudu', family: 'Industrial delivery', body: 'Autonomous delivery platforms for indoor logistics.' },
|
||||
{ brand: 'Unitree', family: 'Sensor-equipped builds', body: 'Custom payloads for thermal and vision inspection.' },
|
||||
],
|
||||
seoTitle: 'Warehouse & Logistics Robots in UAE | YS Lootah Robotics',
|
||||
seoDescription:
|
||||
'Quadruped inspection, autonomous transport, and monitoring robots for UAE warehouses, logistics, and industrial sites. Local Dubai deployment.',
|
||||
},
|
||||
};
|
||||
Loading…
x
Reference in New Issue
Block a user