From efa3c61d2553b3b714188b63d8fbf3a4c8d8e1f5 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Sat, 24 Jan 2026 07:35:56 +0000
Subject: [PATCH 1/6] Initial plan
From 91eb41a063ad37c84bfe0f38a567f64ea7e7a0ec Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Sat, 24 Jan 2026 07:42:58 +0000
Subject: [PATCH 2/6] Add NEXLYN v2 design system with Tailwind CSS v4 and
component library
Co-authored-by: vishnu-madhavan-git <237662584+vishnu-madhavan-git@users.noreply.github.com>
---
components/icons/EmailIcon.tsx | 7 +
components/icons/LocationIcon.tsx | 7 +
components/icons/PhoneIcon.tsx | 6 +
components/icons/WhatsAppIcon.tsx | 6 +
components/icons/index.ts | 5 +
components/layout/Footer.tsx | 157 +++++++
components/layout/Header.tsx | 87 ++++
components/layout/index.ts | 3 +
components/ui/GlassCard.tsx | 41 ++
components/ui/StatusBadge.tsx | 21 +
components/ui/index.ts | 3 +
index.html | 86 +---
index.tsx | 1 +
package-lock.json | 679 ++++++++++++++++++++++++++++++
package.json | 12 +-
postcss.config.cjs | 6 +
services/cloudinaryService.ts | 6 +-
services/geminiService.ts | 2 +-
styles/globals.css | 197 +++++++++
vite-env.d.ts | 12 +
vite.config.ts | 3 +
21 files changed, 1258 insertions(+), 89 deletions(-)
create mode 100644 components/icons/EmailIcon.tsx
create mode 100644 components/icons/LocationIcon.tsx
create mode 100644 components/icons/PhoneIcon.tsx
create mode 100644 components/icons/WhatsAppIcon.tsx
create mode 100644 components/icons/index.ts
create mode 100644 components/layout/Footer.tsx
create mode 100644 components/layout/Header.tsx
create mode 100644 components/layout/index.ts
create mode 100644 components/ui/GlassCard.tsx
create mode 100644 components/ui/StatusBadge.tsx
create mode 100644 components/ui/index.ts
create mode 100644 postcss.config.cjs
create mode 100644 styles/globals.css
create mode 100644 vite-env.d.ts
diff --git a/components/icons/EmailIcon.tsx b/components/icons/EmailIcon.tsx
new file mode 100644
index 0000000..3129eaa
--- /dev/null
+++ b/components/icons/EmailIcon.tsx
@@ -0,0 +1,7 @@
+// components/icons/EmailIcon.tsx
+export const EmailIcon = ({ className = "w-5 h-5" }: { className?: string }) => (
+
+);
diff --git a/components/icons/LocationIcon.tsx b/components/icons/LocationIcon.tsx
new file mode 100644
index 0000000..b441475
--- /dev/null
+++ b/components/icons/LocationIcon.tsx
@@ -0,0 +1,7 @@
+// components/icons/LocationIcon.tsx
+export const LocationIcon = ({ className = "w-5 h-5" }: { className?: string }) => (
+
+);
diff --git a/components/icons/PhoneIcon.tsx b/components/icons/PhoneIcon.tsx
new file mode 100644
index 0000000..1b47087
--- /dev/null
+++ b/components/icons/PhoneIcon.tsx
@@ -0,0 +1,6 @@
+// components/icons/PhoneIcon.tsx
+export const PhoneIcon = ({ className = "w-5 h-5" }: { className?: string }) => (
+
+);
diff --git a/components/icons/WhatsAppIcon.tsx b/components/icons/WhatsAppIcon.tsx
new file mode 100644
index 0000000..3fb0301
--- /dev/null
+++ b/components/icons/WhatsAppIcon.tsx
@@ -0,0 +1,6 @@
+// components/icons/WhatsAppIcon.tsx
+export const WhatsAppIcon = ({ className = "w-5 h-5" }: { className?: string }) => (
+
+);
diff --git a/components/icons/index.ts b/components/icons/index.ts
new file mode 100644
index 0000000..0d56722
--- /dev/null
+++ b/components/icons/index.ts
@@ -0,0 +1,5 @@
+// components/icons/index.ts
+export { WhatsAppIcon } from './WhatsAppIcon';
+export { PhoneIcon } from './PhoneIcon';
+export { EmailIcon } from './EmailIcon';
+export { LocationIcon } from './LocationIcon';
diff --git a/components/layout/Footer.tsx b/components/layout/Footer.tsx
new file mode 100644
index 0000000..36eae01
--- /dev/null
+++ b/components/layout/Footer.tsx
@@ -0,0 +1,157 @@
+// components/layout/Footer.tsx
+import { WhatsAppIcon, PhoneIcon, EmailIcon, LocationIcon } from '@/components/icons';
+
+export const Footer = () => {
+ return (
+
+ );
+};
diff --git a/components/layout/Header.tsx b/components/layout/Header.tsx
new file mode 100644
index 0000000..dde2005
--- /dev/null
+++ b/components/layout/Header.tsx
@@ -0,0 +1,87 @@
+// components/layout/Header.tsx
+'use client';
+import { useState } from 'react';
+import { WhatsAppIcon, PhoneIcon, EmailIcon } from '@/components/icons';
+
+export const Header = () => {
+ const [activeTab, setActiveTab] = useState('overview');
+
+ const navItems = ['Overview', 'Products', 'Solutions', 'Partners', 'Support'];
+
+ return (
+
+ MikroTik Distribution UAE
+ NEXLYN
+