import React, { useState } from 'react';
import {
BarChart,
Bar,
XAxis,
YAxis,
CartesianGrid,
Tooltip as RechartsTooltip,
ResponsiveContainer,
Cell,
ReferenceLine
} from 'recharts';
import {
Search,
Gift,
Bell,
Lock,
ChevronDown,
ChevronUp,
Home,
PlusSquare,
GitBranch,
CreditCard,
Bot,
Blocks,
MoreVertical,
SlidersHorizontal,
MessageSquare,
ArrowUp,
ArrowDown,
LayoutGrid,
Zap,
ChevronLeft,
ChevronRight,
Command
} from 'lucide-react';
const campaignData = [
{ name: 'Jan', value: 45, label: '78%' },
{ name: 'Feb', value: 34, label: '34%' },
{ name: 'Mar', value: 67, label: '67%' },
{ name: 'Apr', value: 28, label: '28%' },
{ name: 'May', value: 39, label: '39%' },
{ name: 'Jun', value: 80, label: '80%' },
];
const performanceStats = [
{ label: 'Delivered', value: '42,642.1', trend: '+0.02%', isPositive: true },
{ label: 'Opened', value: '26,843', trend: '-0.02%', isPositive: false },
{ label: 'Clicked', value: '525,753', trend: '+0.02%', isPositive: true },
{ label: 'Subscribe', value: '425', trend: '+0.02%', isPositive: true },
];
const scheduleDays = [
{ day: 'Mon', date: '15' },
{ day: 'Tue', date: '16' },
{ day: 'Wed', date: '17' },
{ day: 'Thu', date: '18' },
{ day: 'Fri', date: '19', active: true },
{ day: 'Sat', date: '20' },
{ day: 'Sun', date: '21' },
];
const Sidebar = () => (
);
const NavItem = ({ icon: Icon, label, active }) => (
{active && (
)}
{!active && (
)}
{label}
);
const TopNav = () => (
{/* Search Bar */}
{/* Right Actions */}
{/* Top Profile */}
James Passaquindici
ID: 4827682
);
export default function App() {
return (
{/* Abstract Background Elements for Glass Effect */}
{/* Main Content Area */}
{/* Dashboard Header */}
Dashboard
Welcome, Let's dive into your personalized setup guide.
{/* Performance Over Time Card */}
Performance Over Time
29 Sept, 2024
{/* Metrics Row */}
{performanceStats.map((stat, idx) => (
{stat.label}
{stat.value}
{stat.trend}
{stat.isPositive ?
:
}
))}
{/* Bottom Grid */}
{/* Campaign Performance Chart (Takes up 2 columns on large screens) */}
Campaign Performance
$24,747.01
29 Sept, 2024
vs last month
{/* Recharts Bar Chart */}
{/* Custom Reference Line for Average */}
}
/>
{campaignData.map((entry, index) => (
|
))}
{/* Schedule Campaign Card */}
Schedule Campaign
{/* Calendar Header */}
{/* Days Strip */}
{scheduleDays.map((d, i) => (
))}
{/* Events List */}
{/* Event 1 */}
Today
Element of Design Test
10:00 - 11:00 AM
{/* Event 2 */}
Sat, Jan 20
Design Principle Test
10:00 - 11:00 AM
{/* Floating Action Button - Chat */}
{/* Styles for Glassmorphism & Fonts */}
);
}
const CustomReferenceLabel = ({ viewBox, value }) => {
const x = viewBox.x + 10;
const y = viewBox.y - 10;
return (
{value}
);
};