|
|
<!DOCTYPE html> |
|
|
<html lang="en"> |
|
|
<head> |
|
|
<meta charset="UTF-8"> |
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|
|
<title>FlameGuardian - Fire Detection Dashboard</title> |
|
|
<script src="https://cdn.tailwindcss.com"></script> |
|
|
<script src="https://unpkg.com/feather-icons"></script> |
|
|
<script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script> |
|
|
<script src="https://cdn.jsdelivr.net/npm/vanta@latest/dist/vanta.waves.min.js"></script> |
|
|
<style> |
|
|
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap'); |
|
|
body { |
|
|
font-family: 'Poppins', sans-serif; |
|
|
} |
|
|
.heat-gradient { |
|
|
background: linear-gradient(135deg, #f5f7fa 0%, #f8c537 50%, #f44336 100%); |
|
|
} |
|
|
.alert-pulse { |
|
|
animation: pulse 2s infinite; |
|
|
} |
|
|
@keyframes pulse { |
|
|
0% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.7); } |
|
|
70% { box-shadow: 0 0 0 10px rgba(239, 68, 68, 0); } |
|
|
100% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0); } |
|
|
} |
|
|
</style> |
|
|
</head> |
|
|
<body class="bg-gray-50 min-h-screen"> |
|
|
<div id="vanta-bg" class="fixed inset-0 z-0"></div> |
|
|
<div class="relative z-10"> |
|
|
|
|
|
<header class="bg-white/80 backdrop-blur-md shadow-sm"> |
|
|
<div class="container mx-auto px-4 py-4 flex justify-between items-center"> |
|
|
<div class="flex items-center space-x-2"> |
|
|
<div class="bg-red-500 rounded-full p-2"> |
|
|
<i data-feather="alert-triangle" class="text-white"></i> |
|
|
</div> |
|
|
<h1 class="text-2xl font-bold text-gray-800">FlameGuardian</h1> |
|
|
</div> |
|
|
<div class="flex items-center space-x-4"> |
|
|
<button class="p-2 rounded-full bg-gray-100 hover:bg-gray-200"> |
|
|
<i data-feather="settings"></i> |
|
|
</button> |
|
|
<div class="flex items-center space-x-2"> |
|
|
<div class="w-8 h-8 rounded-full bg-red-500 flex items-center justify-center text-white font-medium">JD</div> |
|
|
<span class="hidden md:inline">John Doe</span> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</header> |
|
|
|
|
|
|
|
|
<main class="container mx-auto px-4 py-8"> |
|
|
<div class="grid grid-cols-1 lg:grid-cols-3 gap-6"> |
|
|
|
|
|
<div class="lg:col-span-2 space-y-6"> |
|
|
|
|
|
<div class="bg-white rounded-xl shadow-md overflow-hidden"> |
|
|
<div class="p-4 border-b border-gray-200 flex justify-between items-center"> |
|
|
<h2 class="text-lg font-semibold text-gray-800">Live Detection Feed</h2> |
|
|
<div class="flex items-center space-x-2"> |
|
|
<span class="text-sm text-gray-500">Status:</span> |
|
|
<span class="px-2 py-1 bg-green-100 text-green-800 text-xs font-medium rounded-full">ACTIVE</span> |
|
|
</div> |
|
|
</div> |
|
|
<div class="relative"> |
|
|
<div class="aspect-video bg-gray-200 flex items-center justify-center"> |
|
|
<img src="http://static.photos/industry/640x360" alt="Camera Feed" class="w-full h-full object-cover"> |
|
|
<div class="absolute inset-0 flex items-center justify-center"> |
|
|
<div class="bg-red-500 text-white px-4 py-2 rounded-lg opacity-90"> |
|
|
<div class="flex items-center space-x-2"> |
|
|
<i data-feather="alert-triangle"></i> |
|
|
<span>FIRE DETECTED (87%)</span> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<div class="absolute top-4 right-4 bg-black/50 text-white px-2 py-1 rounded text-xs"> |
|
|
<i data-feather="video" class="w-3 h-3 inline mr-1"></i> |
|
|
CAM-03 |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<div class="p-4 flex justify-between items-center"> |
|
|
<div class="flex space-x-2"> |
|
|
<button class="px-4 py-2 bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition flex items-center"> |
|
|
<i data-feather="alert-circle" class="w-4 h-4 mr-2"></i> |
|
|
Send Alert |
|
|
</button> |
|
|
<a href="camera.html" class="px-4 py-2 bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition flex items-center"> |
|
|
<i data-feather="video" class="w-4 h-4 mr-2"></i> |
|
|
Manage Cameras |
|
|
</a> |
|
|
<a href="yolov13.html" class="px-4 py-2 bg-purple-600 text-white rounded-lg hover:bg-purple-700 transition flex items-center"> |
|
|
<i data-feather="cpu" class="w-4 h-4 mr-2"></i> |
|
|
YOLOv13 AI |
|
|
</a> |
|
|
<a href="yoloworld.html" class="px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition flex items-center"> |
|
|
<i data-feather="globe" class="w-4 h-4 mr-2"></i> |
|
|
YOLO-World |
|
|
</a> |
|
|
<a href="yolov10.html" class="px-4 py-2 bg-teal-600 text-white rounded-lg hover:bg-teal-700 transition flex items-center"> |
|
|
<i data-feather="cpu" class="w-4 h-4 mr-2"></i> |
|
|
YOLOv10 |
|
|
</a> |
|
|
<a href="yolov11.html" class="px-4 py-2 bg-pink-600 text-white rounded-lg hover:bg-pink-700 transition flex items-center"> |
|
|
<i data-feather="cpu" class="w-4 h-4 mr-2"></i> |
|
|
YOLOv11 |
|
|
</a> |
|
|
<a href="ai-control.html" class="px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition flex items-center"> |
|
|
<i data-feather="brain" class="w-4 h-4 mr-2"></i> |
|
|
AI Control |
|
|
</a> |
|
|
<button class="px-4 py-2 bg-gray-100 rounded-lg hover:bg-gray-200 transition flex items-center"> |
|
|
<i data-feather="maximize" class="w-4 h-4 mr-2"></i> |
|
|
Fullscreen |
|
|
</button> |
|
|
</div> |
|
|
<div class="text-sm text-gray-500"> |
|
|
Last updated: Just now |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
<div class="bg-white rounded-xl shadow-md overflow-hidden"> |
|
|
<div class="p-4 border-b border-gray-200"> |
|
|
<h2 class="text-lg font-semibold text-gray-800 flex items-center"> |
|
|
<i data-feather="bell" class="w-5 h-5 mr-2 text-red-500"></i> |
|
|
Recent Alerts |
|
|
</h2> |
|
|
</div> |
|
|
<div class="divide-y divide-gray-200"> |
|
|
|
|
|
<div class="p-4 hover:bg-red-50 transition cursor-pointer"> |
|
|
<div class="flex justify-between items-start"> |
|
|
<div class="flex items-start space-x-3"> |
|
|
<div class="mt-1"> |
|
|
<div class="w-8 h-8 rounded-full bg-red-100 flex items-center justify-center"> |
|
|
<i data-feather="alert-triangle" class="w-4 h-4 text-red-500"></i> |
|
|
</div> |
|
|
</div> |
|
|
<div> |
|
|
<h3 class="font-medium text-gray-800">Fire detected in Warehouse A</h3> |
|
|
<p class="text-sm text-gray-500">Confidence: 87% | Location: Sector 4</p> |
|
|
</div> |
|
|
</div> |
|
|
<span class="text-xs text-gray-400">2 min ago</span> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
<div class="p-4 hover:bg-orange-50 transition cursor-pointer"> |
|
|
<div class="flex justify-between items-start"> |
|
|
<div class="flex items-start space-x-3"> |
|
|
<div class="mt-1"> |
|
|
<div class="w-8 h-8 rounded-full bg-orange-100 flex items-center justify-center"> |
|
|
<i data-feather="cloud" class="w-4 h-4 text-orange-500"></i> |
|
|
</div> |
|
|
</div> |
|
|
<div> |
|
|
<h3 class="font-medium text-gray-800">Smoke detected in Storage Room 2</h3> |
|
|
<p class="text-sm text-gray-500">Confidence: 72% | Location: Sector 1</p> |
|
|
</div> |
|
|
</div> |
|
|
<span class="text-xs text-gray-400">15 min ago</span> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
<div class="p-4 hover:bg-yellow-50 transition cursor-pointer"> |
|
|
<div class="flex justify-between items-start"> |
|
|
<div class="flex items-start space-x-3"> |
|
|
<div class="mt-1"> |
|
|
<div class="w-8 h-8 rounded-full bg-yellow-100 flex items-center justify-center"> |
|
|
<i data-feather="alert-octagon" class="w-4 h-4 text-yellow-500"></i> |
|
|
</div> |
|
|
</div> |
|
|
<div> |
|
|
<h3 class="font-medium text-gray-800">Heat anomaly in Office Area</h3> |
|
|
<p class="text-sm text-gray-500">Confidence: 65% | Location: Sector 3</p> |
|
|
</div> |
|
|
</div> |
|
|
<span class="text-xs text-gray-400">42 min ago</span> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<div class="p-4 text-center"> |
|
|
<a href="camera.html" class="text-blue-600 hover:text-blue-800 text-sm font-medium flex items-center justify-center mx-auto"> |
|
|
Configure Alerts |
|
|
<i data-feather="chevron-right" class="w-4 h-4 ml-1"></i> |
|
|
</a> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
<div class="space-y-6"> |
|
|
|
|
|
<div class="bg-white rounded-xl shadow-md overflow-hidden"> |
|
|
<div class="p-4 border-b border-gray-200"> |
|
|
<h2 class="text-lg font-semibold text-gray-800 flex items-center"> |
|
|
<i data-feather="activity" class="w-5 h-5 mr-2 text-blue-500"></i> |
|
|
System Overview |
|
|
</h2> |
|
|
</div> |
|
|
<div class="p-4 grid grid-cols-2 gap-4"> |
|
|
<div class="bg-green-50 p-4 rounded-lg"> |
|
|
<div class="flex items-center justify-between"> |
|
|
<span class="text-sm text-gray-600">Cameras</span> |
|
|
<div class="w-8 h-8 rounded-full bg-green-100 flex items-center justify-center"> |
|
|
<i data-feather="video" class="w-4 h-4 text-green-500"></i> |
|
|
</div> |
|
|
</div> |
|
|
<h3 class="text-2xl font-bold mt-2 text-gray-800">8/8</h3> |
|
|
<p class="text-xs text-green-600 mt-1">All systems operational</p> |
|
|
</div> |
|
|
<div class="bg-blue-50 p-4 rounded-lg"> |
|
|
<div class="flex items-center justify-between"> |
|
|
<span class="text-sm text-gray-600">Detections</span> |
|
|
<div class="w-8 h-8 rounded-full bg-blue-100 flex items-center justify-center"> |
|
|
<i data-feather="eye" class="w-4 h-4 text-blue-500"></i> |
|
|
</div> |
|
|
</div> |
|
|
<h3 class="text-2xl font-bold mt-2 text-gray-800">24</h3> |
|
|
<p class="text-xs text-blue-600 mt-1">Today</p> |
|
|
</div> |
|
|
<div class="bg-yellow-50 p-4 rounded-lg"> |
|
|
<div class="flex items-center justify-between"> |
|
|
<span class="text-sm text-gray-600">Alerts</span> |
|
|
<div class="w-8 h-8 rounded-full bg-yellow-100 flex items-center justify-center"> |
|
|
<i data-feather="bell" class="w-4 h-4 text-yellow-500"></i> |
|
|
</div> |
|
|
</div> |
|
|
<h3 class="text-2xl font-bold mt-2 text-gray-800">3</h3> |
|
|
<p class="text-xs text-yellow-600 mt-1">Active</p> |
|
|
</div> |
|
|
<div class="bg-red-50 p-4 rounded-lg"> |
|
|
<div class="flex items-center justify-between"> |
|
|
<span class="text-sm text-gray-600">Response Time</span> |
|
|
<div class="w-8 h-8 rounded-full bg-red-100 flex items-center justify-center"> |
|
|
<i data-feather="clock" class="w-4 h-4 text-red-500"></i> |
|
|
</div> |
|
|
</div> |
|
|
<h3 class="text-2xl font-bold mt-2 text-gray-800">1.2m</h3> |
|
|
<p class="text-xs text-red-600 mt-1">Avg. response</p> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
<div class="bg-white rounded-xl shadow-md overflow-hidden"> |
|
|
<div class="p-4 border-b border-gray-200"> |
|
|
<h2 class="text-lg font-semibold text-gray-800 flex items-center"> |
|
|
<i data-feather="cpu" class="w-5 h-5 mr-2 text-purple-500"></i> |
|
|
Model Performance |
|
|
</h2> |
|
|
</div> |
|
|
<div class="p-4"> |
|
|
<div class="space-y-4"> |
|
|
<div> |
|
|
<div class="flex justify-between text-sm mb-1"> |
|
|
<span class="text-gray-600">Accuracy</span> |
|
|
<span class="font-medium">94.7%</span> |
|
|
</div> |
|
|
<div class="w-full bg-gray-200 rounded-full h-2"> |
|
|
<div class="bg-green-500 h-2 rounded-full" style="width: 94.7%"></div> |
|
|
</div> |
|
|
</div> |
|
|
<div> |
|
|
<div class="flex justify-between text-sm mb-1"> |
|
|
<span class="text-gray-600">Precision</span> |
|
|
<span class="font-medium">92.3%</span> |
|
|
</div> |
|
|
<div class="w-full bg-gray-200 rounded-full h-2"> |
|
|
<div class="bg-blue-500 h-2 rounded-full" style="width: 92.3%"></div> |
|
|
</div> |
|
|
</div> |
|
|
<div> |
|
|
<div class="flex justify-between text-sm mb-1"> |
|
|
<span class="text-gray-600">Recall</span> |
|
|
<span class="font-medium">89.5%</span> |
|
|
</div> |
|
|
<div class="w-full bg-gray-200 rounded-full h-2"> |
|
|
<div class="bg-purple-500 h-2 rounded-full" style="width: 89.5%"></div> |
|
|
</div> |
|
|
</div> |
|
|
<div> |
|
|
<div class="flex justify-between text-sm mb-1"> |
|
|
<span class="text-gray-600">F1 Score</span> |
|
|
<span class="font-medium">90.8%</span> |
|
|
</div> |
|
|
<div class="w-full bg-gray-200 rounded-full h-2"> |
|
|
<div class="bg-yellow-500 h-2 rounded-full" style="width: 90.8%"></div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<div class="mt-4 pt-4 border-t border-gray-200 text-center"> |
|
|
<span class="text-xs text-gray-500 inline-flex items-center"> |
|
|
<i data-feather="info" class="w-3 h-3 mr-1"></i> |
|
|
YOLOv8 Nano | Updated 2 hours ago |
|
|
</span> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
<div class="bg-white rounded-xl shadow-md overflow-hidden"> |
|
|
<div class="p-4 border-b border-gray-200"> |
|
|
<h2 class="text-lg font-semibold text-gray-800 flex items-center"> |
|
|
<i data-feather="zap" class="w-5 h-5 mr-2 text-orange-500"></i> |
|
|
Quick Actions |
|
|
</h2> |
|
|
</div> |
|
|
<div class="p-4 grid grid-cols-2 gap-3"> |
|
|
<button class="p-3 bg-red-50 rounded-lg flex flex-col items-center justify-center hover:bg-red-100 transition"> |
|
|
<div class="w-10 h-10 rounded-full bg-red-100 flex items-center justify-center mb-2"> |
|
|
<i data-feather="alert-octagon" class="w-5 h-5 text-red-500"></i> |
|
|
</div> |
|
|
<span class="text-sm font-medium text-gray-700">Emergency Stop</span> |
|
|
</button> |
|
|
<button class="p-3 bg-blue-50 rounded-lg flex flex-col items-center justify-center hover:bg-blue-100 transition"> |
|
|
<div class="w-10 h-10 rounded-full bg-blue-100 flex items-center justify-center mb-2"> |
|
|
<i data-feather="users" class="w-5 h-5 text-blue-500"></i> |
|
|
</div> |
|
|
<span class="text-sm font-medium text-gray-700">Notify Team</span> |
|
|
</button> |
|
|
<button class="p-3 bg-green-50 rounded-lg flex flex-col items-center justify-center hover:bg-green-100 transition"> |
|
|
<div class="w-10 h-10 rounded-full bg-green-100 flex items-center justify-center mb-2"> |
|
|
<i data-feather="refresh-cw" class="w-5 h-5 text-green-500"></i> |
|
|
</div> |
|
|
<span class="text-sm font-medium text-gray-700">System Reset</span> |
|
|
</button> |
|
|
<button class="p-3 bg-purple-50 rounded-lg flex flex-col items-center justify-center hover:bg-purple-100 transition"> |
|
|
<div class="w-10 h-10 rounded-full bg-purple-100 flex items-center justify-center mb-2"> |
|
|
<i data-feather="download" class="w-5 h-5 text-purple-500"></i> |
|
|
</div> |
|
|
<span class="text-sm font-medium text-gray-700">Export Logs</span> |
|
|
</button> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</main> |
|
|
</div> |
|
|
|
|
|
<script> |
|
|
|
|
|
VANTA.WAVES({ |
|
|
el: "#vanta-bg", |
|
|
mouseControls: true, |
|
|
touchControls: true, |
|
|
gyroControls: false, |
|
|
minHeight: 200.00, |
|
|
minWidth: 200.00, |
|
|
scale: 1.00, |
|
|
scaleMobile: 1.00, |
|
|
color: 0x3a86ff, |
|
|
shininess: 35.00, |
|
|
waveHeight: 15.00, |
|
|
waveSpeed: 0.85, |
|
|
zoom: 0.75 |
|
|
}); |
|
|
|
|
|
|
|
|
feather.replace(); |
|
|
|
|
|
|
|
|
setInterval(() => { |
|
|
document.querySelector('.alert-pulse')?.classList.toggle('opacity-90'); |
|
|
}, 1000); |
|
|
</script> |
|
|
</body> |
|
|
</html> |
|
|
|