dashboardfuture / index.html
RadMann's picture
fait moi une dashboard POS futuriste - Initial Deployment
cc93ac0 verified
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>NexusPOS - Dashboard Futuriste</title>
<script src="https://cdn.tailwindcss.com"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
<style>
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400;500;700&family=Roboto:wght@300;400;500&display=swap');
:root {
--primary: #6c5ce7;
--secondary: #00cec9;
--dark: #2d3436;
--light: #f5f6fa;
--accent: #fd79a8;
}
body {
font-family: 'Roboto', sans-serif;
background-color: #0f172a;
color: var(--light);
overflow-x: hidden;
}
.futuristic-font {
font-family: 'Orbitron', sans-serif;
}
.glow-effect {
box-shadow: 0 0 15px rgba(108, 92, 231, 0.5);
}
.glow-text {
text-shadow: 0 0 8px rgba(108, 92, 231, 0.7);
}
.neumorphic {
border-radius: 16px;
background: linear-gradient(145deg, #1e293b, #0f172a);
box-shadow: 8px 8px 16px #0a101a,
-8px -8px 16px #141e30;
}
.neumorphic-card {
border-radius: 12px;
background: linear-gradient(145deg, #1e293b, #0f172a);
box-shadow: 5px 5px 10px #0a101a,
-5px -5px 10px #141e30;
transition: all 0.3s ease;
}
.neumorphic-card:hover {
transform: translateY(-5px);
box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3);
}
.gradient-text {
background: linear-gradient(90deg, #6c5ce7, #00cec9);
-webkit-background-clip: text;
background-clip: text;
color: transparent;
}
.sidebar-item:hover {
background: linear-gradient(90deg, rgba(108, 92, 231, 0.2), transparent);
border-left: 3px solid var(--primary);
}
.product-card:hover {
transform: scale(1.03);
}
@keyframes pulse {
0%, 100% {
opacity: 1;
}
50% {
opacity: 0.5;
}
}
.animate-pulse {
animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
/* Scrollbar personnalisée */
::-webkit-scrollbar {
width: 8px;
height: 8px;
}
::-webkit-scrollbar-track {
background: #1e293b;
}
::-webkit-scrollbar-thumb {
background: #6c5ce7;
border-radius: 10px;
}
::-webkit-scrollbar-thumb:hover {
background: #00cec9;
}
</style>
</head>
<body class="min-h-screen flex">
<!-- Sidebar -->
<div class="w-64 bg-slate-900 border-r border-slate-700 flex flex-col">
<div class="p-4 flex items-center justify-center border-b border-slate-700">
<div class="flex items-center space-x-2">
<div class="w-10 h-10 rounded-full bg-gradient-to-r from-purple-600 to-cyan-400 flex items-center justify-center">
<i class="fas fa-cash-register text-white"></i>
</div>
<h1 class="text-xl font-bold gradient-text futuristic-font">NexusPOS</h1>
</div>
</div>
<div class="flex-1 overflow-y-auto p-4 space-y-2">
<div class="sidebar-item p-3 rounded-lg cursor-pointer flex items-center space-x-3">
<i class="fas fa-tachometer-alt text-purple-500"></i>
<span>Tableau de bord</span>
</div>
<div class="sidebar-item p-3 rounded-lg cursor-pointer flex items-center space-x-3 bg-gradient-to-r from-purple-900/30 to-transparent border-l-2 border-purple-500">
<i class="fas fa-shopping-cart text-cyan-400"></i>
<span>Point de vente</span>
</div>
<div class="sidebar-item p-3 rounded-lg cursor-pointer flex items-center space-x-3">
<i class="fas fa-boxes text-yellow-500"></i>
<span>Inventaire</span>
</div>
<div class="sidebar-item p-3 rounded-lg cursor-pointer flex items-center space-x-3">
<i class="fas fa-users text-green-500"></i>
<span>Clients</span>
</div>
<div class="sidebar-item p-3 rounded-lg cursor-pointer flex items-center space-x-3">
<i class="fas fa-chart-line text-blue-500"></i>
<span>Rapports</span>
</div>
<div class="sidebar-item p-3 rounded-lg cursor-pointer flex items-center space-x-3">
<i class="fas fa-cog text-gray-400"></i>
<span>Paramètres</span>
</div>
</div>
<div class="p-4 border-t border-slate-700">
<div class="flex items-center space-x-3">
<div class="w-10 h-10 rounded-full bg-gradient-to-r from-purple-600 to-cyan-400 flex items-center justify-center">
<i class="fas fa-user text-white"></i>
</div>
<div>
<p class="font-medium">Admin</p>
<p class="text-xs text-slate-400">Administrateur</p>
</div>
</div>
</div>
</div>
<!-- Main Content -->
<div class="flex-1 flex flex-col overflow-hidden">
<!-- Top Bar -->
<div class="bg-slate-800 border-b border-slate-700 p-4 flex items-center justify-between">
<div class="flex items-center space-x-4">
<h2 class="text-xl font-bold gradient-text futuristic-font">POINT DE VENTE</h2>
<div class="relative">
<input type="text" placeholder="Rechercher un produit..." class="bg-slate-700 text-white px-4 py-2 rounded-lg pl-10 w-64 focus:outline-none focus:ring-2 focus:ring-purple-500">
<i class="fas fa-search absolute left-3 top-3 text-slate-400"></i>
</div>
</div>
<div class="flex items-center space-x-4">
<div class="relative">
<i class="fas fa-bell text-slate-300 cursor-pointer hover:text-purple-400"></i>
<span class="absolute -top-1 -right-1 w-4 h-4 bg-red-500 rounded-full flex items-center justify-center text-xs">3</span>
</div>
<div class="w-8 h-8 rounded-full bg-gradient-to-r from-purple-600 to-cyan-400 flex items-center justify-center cursor-pointer">
<i class="fas fa-user text-white text-sm"></i>
</div>
</div>
</div>
<!-- Dashboard Content -->
<div class="flex-1 overflow-y-auto p-6">
<!-- Stats Cards -->
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-6">
<div class="neumorphic-card p-6">
<div class="flex items-center justify-between">
<div>
<p class="text-slate-400">Ventes aujourd'hui</p>
<h3 class="text-2xl font-bold mt-2">1,248.50 €</h3>
<p class="text-green-400 text-sm mt-1 flex items-center">
<i class="fas fa-arrow-up mr-1"></i> 12% vs hier
</p>
</div>
<div class="w-12 h-12 rounded-full bg-purple-900/30 flex items-center justify-center">
<i class="fas fa-euro-sign text-purple-400"></i>
</div>
</div>
</div>
<div class="neumorphic-card p-6">
<div class="flex items-center justify-between">
<div>
<p class="text-slate-400">Transactions</p>
<h3 class="text-2xl font-bold mt-2">48</h3>
<p class="text-green-400 text-sm mt-1 flex items-center">
<i class="fas fa-arrow-up mr-1"></i> 8% vs hier
</p>
</div>
<div class="w-12 h-12 rounded-full bg-cyan-900/30 flex items-center justify-center">
<i class="fas fa-exchange-alt text-cyan-400"></i>
</div>
</div>
</div>
<div class="neumorphic-card p-6">
<div class="flex items-center justify-between">
<div>
<p class="text-slate-400">Panier moyen</p>
<h3 class="text-2xl font-bold mt-2">26.01 €</h3>
<p class="text-red-400 text-sm mt-1 flex items-center">
<i class="fas fa-arrow-down mr-1"></i> 3% vs hier
</p>
</div>
<div class="w-12 h-12 rounded-full bg-yellow-900/30 flex items-center justify-center">
<i class="fas fa-shopping-basket text-yellow-400"></i>
</div>
</div>
</div>
<div class="neumorphic-card p-6">
<div class="flex items-center justify-between">
<div>
<p class="text-slate-400">Clients</p>
<h3 class="text-2xl font-bold mt-2">32</h3>
<p class="text-green-400 text-sm mt-1 flex items-center">
<i class="fas fa-arrow-up mr-1"></i> 14% vs hier
</p>
</div>
<div class="w-12 h-12 rounded-full bg-green-900/30 flex items-center justify-center">
<i class="fas fa-users text-green-400"></i>
</div>
</div>
</div>
</div>
<!-- Main POS Area -->
<div class="grid grid-cols-1 lg:grid-cols-3 gap-6">
<!-- Products Grid -->
<div class="lg:col-span-2">
<div class="flex items-center justify-between mb-4">
<h3 class="text-lg font-semibold">Produits</h3>
<div class="flex space-x-2">
<button class="bg-slate-700 hover:bg-slate-600 px-3 py-1 rounded-lg text-sm flex items-center">
<i class="fas fa-filter mr-1"></i> Filtres
</button>
<button class="bg-purple-600 hover:bg-purple-700 px-3 py-1 rounded-lg text-sm flex items-center">
<i class="fas fa-plus mr-1"></i> Ajouter
</button>
</div>
</div>
<div class="grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-4">
<!-- Product Cards -->
<div class="product-card neumorphic-card p-3 cursor-pointer transition-all duration-300">
<div class="relative">
<div class="bg-gradient-to-br from-purple-500 to-blue-500 h-32 rounded-lg flex items-center justify-center">
<i class="fas fa-wine-bottle text-white text-4xl"></i>
</div>
<span class="absolute top-2 right-2 bg-slate-900/70 text-white text-xs px-2 py-1 rounded-full">12 en stock</span>
</div>
<div class="mt-3">
<h4 class="font-medium truncate">Vin rouge premium</h4>
<div class="flex items-center justify-between mt-2">
<span class="text-purple-400 font-bold">24.99 €</span>
<button class="w-8 h-8 rounded-full bg-gradient-to-r from-purple-600 to-cyan-400 flex items-center justify-center text-white">
<i class="fas fa-plus text-sm"></i>
</button>
</div>
</div>
</div>
<div class="product-card neumorphic-card p-3 cursor-pointer transition-all duration-300">
<div class="relative">
<div class="bg-gradient-to-br from-amber-500 to-yellow-500 h-32 rounded-lg flex items-center justify-center">
<i class="fas fa-beer text-white text-4xl"></i>
</div>
<span class="absolute top-2 right-2 bg-slate-900/70 text-white text-xs px-2 py-1 rounded-full">24 en stock</span>
</div>
<div class="mt-3">
<h4 class="font-medium truncate">Bière artisanale</h4>
<div class="flex items-center justify-between mt-2">
<span class="text-purple-400 font-bold">5.50 €</span>
<button class="w-8 h-8 rounded-full bg-gradient-to-r from-purple-600 to-cyan-400 flex items-center justify-center text-white">
<i class="fas fa-plus text-sm"></i>
</button>
</div>
</div>
</div>
<div class="product-card neumorphic-card p-3 cursor-pointer transition-all duration-300">
<div class="relative">
<div class="bg-gradient-to-br from-green-500 to-emerald-500 h-32 rounded-lg flex items-center justify-center">
<i class="fas fa-cocktail text-white text-4xl"></i>
</div>
<span class="absolute top-2 right-2 bg-slate-900/70 text-white text-xs px-2 py-1 rounded-full">8 en stock</span>
</div>
<div class="mt-3">
<h4 class="font-medium truncate">Cocktail signature</h4>
<div class="flex items-center justify-between mt-2">
<span class="text-purple-400 font-bold">12.99 €</span>
<button class="w-8 h-8 rounded-full bg-gradient-to-r from-purple-600 to-cyan-400 flex items-center justify-center text-white">
<i class="fas fa-plus text-sm"></i>
</button>
</div>
</div>
</div>
<div class="product-card neumorphic-card p-3 cursor-pointer transition-all duration-300">
<div class="relative">
<div class="bg-gradient-to-br from-red-500 to-pink-500 h-32 rounded-lg flex items-center justify-center">
<i class="fas fa-glass-whiskey text-white text-4xl"></i>
</div>
<span class="absolute top-2 right-2 bg-slate-900/70 text-white text-xs px-2 py-1 rounded-full">15 en stock</span>
</div>
<div class="mt-3">
<h4 class="font-medium truncate">Whisky single malt</h4>
<div class="flex items-center justify-between mt-2">
<span class="text-purple-400 font-bold">18.50 €</span>
<button class="w-8 h-8 rounded-full bg-gradient-to-r from-purple-600 to-cyan-400 flex items-center justify-center text-white">
<i class="fas fa-plus text-sm"></i>
</button>
</div>
</div>
</div>
<div class="product-card neumorphic-card p-3 cursor-pointer transition-all duration-300">
<div class="relative">
<div class="bg-gradient-to-br from-blue-500 to-cyan-500 h-32 rounded-lg flex items-center justify-center">
<i class="fas fa-coffee text-white text-4xl"></i>
</div>
<span class="absolute top-2 right-2 bg-slate-900/70 text-white text-xs px-2 py-1 rounded-full">30 en stock</span>
</div>
<div class="mt-3">
<h4 class="font-medium truncate">Café spécial</h4>
<div class="flex items-center justify-between mt-2">
<span class="text-purple-400 font-bold">3.50 €</span>
<button class="w-8 h-8 rounded-full bg-gradient-to-r from-purple-600 to-cyan-400 flex items-center justify-center text-white">
<i class="fas fa-plus text-sm"></i>
</button>
</div>
</div>
</div>
<div class="product-card neumorphic-card p-3 cursor-pointer transition-all duration-300">
<div class="relative">
<div class="bg-gradient-to-br from-orange-500 to-amber-500 h-32 rounded-lg flex items-center justify-center">
<i class="fas fa-ice-cream text-white text-4xl"></i>
</div>
<span class="absolute top-2 right-2 bg-slate-900/70 text-white text-xs px-2 py-1 rounded-full">18 en stock</span>
</div>
<div class="mt-3">
<h4 class="font-medium truncate">Dessert glacé</h4>
<div class="flex items-center justify-between mt-2">
<span class="text-purple-400 font-bold">6.99 €</span>
<button class="w-8 h-8 rounded-full bg-gradient-to-r from-purple-600 to-cyan-400 flex items-center justify-center text-white">
<i class="fas fa-plus text-sm"></i>
</button>
</div>
</div>
</div>
</div>
</div>
<!-- Cart Section -->
<div class="neumorphic p-4">
<div class="flex items-center justify-between mb-4">
<h3 class="text-lg font-semibold">Panier actuel</h3>
<span class="text-sm text-slate-400">Transaction #ORD-4829</span>
</div>
<div class="mb-4">
<div class="flex items-center space-x-2 mb-2">
<input type="text" placeholder="Code client..." class="bg-slate-700 text-white px-3 py-2 rounded-lg flex-1 focus:outline-none focus:ring-2 focus:ring-purple-500">
<button class="bg-purple-600 hover:bg-purple-700 px-3 py-2 rounded-lg text-sm">
<i class="fas fa-user-plus"></i>
</button>
</div>
<div class="flex space-x-2">
<button class="bg-slate-700 hover:bg-slate-600 px-3 py-2 rounded-lg text-sm flex-1">
<i class="fas fa-user mr-1"></i> Client occasionnel
</button>
<button class="bg-slate-700 hover:bg-slate-600 px-3 py-2 rounded-lg text-sm">
<i class="fas fa-search"></i>
</button>
</div>
</div>
<div class="h-96 overflow-y-auto mb-4">
<div class="space-y-3">
<!-- Cart Items -->
<div class="flex items-center justify-between p-3 bg-slate-800 rounded-lg">
<div class="flex items-center space-x-3">
<div class="w-10 h-10 rounded bg-gradient-to-r from-purple-500 to-blue-500 flex items-center justify-center">
<i class="fas fa-wine-bottle text-white"></i>
</div>
<div>
<h4 class="font-medium">Vin rouge premium</h4>
<p class="text-xs text-slate-400">24.99 € x 2</p>
</div>
</div>
<div class="flex items-center space-x-3">
<span class="font-bold">49.98 €</span>
<button class="text-red-400 hover:text-red-300">
<i class="fas fa-trash"></i>
</button>
</div>
</div>
<div class="flex items-center justify-between p-3 bg-slate-800 rounded-lg">
<div class="flex items-center space-x-3">
<div class="w-10 h-10 rounded bg-gradient-to-r from-amber-500 to-yellow-500 flex items-center justify-center">
<i class="fas fa-beer text-white"></i>
</div>
<div>
<h4 class="font-medium">Bière artisanale</h4>
<p class="text-xs text-slate-400">5.50 € x 3</p>
</div>
</div>
<div class="flex items-center space-x-3">
<span class="font-bold">16.50 €</span>
<button class="text-red-400 hover:text-red-300">
<i class="fas fa-trash"></i>
</button>
</div>
</div>
<div class="flex items-center justify-between p-3 bg-slate-800 rounded-lg">
<div class="flex items-center space-x-3">
<div class="w-10 h-10 rounded bg-gradient-to-r from-green-500 to-emerald-500 flex items-center justify-center">
<i class="fas fa-cocktail text-white"></i>
</div>
<div>
<h4 class="font-medium">Cocktail signature</h4>
<p class="text-xs text-slate-400">12.99 € x 1</p>
</div>
</div>
<div class="flex items-center space-x-3">
<span class="font-bold">12.99 €</span>
<button class="text-red-400 hover:text-red-300">
<i class="fas fa-trash"></i>
</button>
</div>
</div>
</div>
</div>
<div class="bg-slate-800 rounded-lg p-4 mb-4">
<div class="flex justify-between items-center mb-2">
<span>Sous-total</span>
<span class="font-bold">79.47 €</span>
</div>
<div class="flex justify-between items-center mb-2">
<span>Taxes (10%)</span>
<span class="font-bold">7.95 €</span>
</div>
<div class="flex justify-between items-center border-t border-slate-700 pt-3">
<span class="font-semibold">Total</span>
<span class="text-xl font-bold text-purple-400">87.42 €</span>
</div>
</div>
<div class="grid grid-cols-2 gap-3">
<button class="bg-slate-700 hover:bg-slate-600 py-3 rounded-lg font-medium flex items-center justify-center space-x-2">
<i class="fas fa-trash"></i>
<span>Vider</span>
</button>
<button class="bg-gradient-to-r from-purple-600 to-cyan-500 hover:from-purple-700 hover:to-cyan-600 py-3 rounded-lg font-medium flex items-center justify-center space-x-2 glow-effect">
<i class="fas fa-credit-card"></i>
<span>Payer</span>
</button>
</div>
<div class="mt-4 grid grid-cols-3 gap-2">
<button class="bg-slate-700 hover:bg-slate-600 py-2 rounded-lg">Espèces</button>
<button class="bg-slate-700 hover:bg-slate-600 py-2 rounded-lg">Carte</button>
<button class="bg-slate-700 hover:bg-slate-600 py-2 rounded-lg">Mobile</button>
</div>
</div>
</div>
</div>
</div>
<script>
// Animation pour les cartes de produits
document.querySelectorAll('.product-card').forEach(card => {
card.addEventListener('mouseenter', () => {
card.classList.add('glow-effect');
});
card.addEventListener('mouseleave', () => {
card.classList.remove('glow-effect');
});
});
// Simulation de chargement
document.addEventListener('DOMContentLoaded', () => {
const loadingElements = document.querySelectorAll('.animate-pulse');
setTimeout(() => {
loadingElements.forEach(el => el.classList.remove('animate-pulse'));
}, 1500);
});
// Gestion du panier (simplifié)
document.querySelectorAll('.product-card button').forEach(button => {
button.addEventListener('click', function() {
const productCard = this.closest('.product-card');
const productName = productCard.querySelector('h4').textContent;
const productPrice = productCard.querySelector('span').textContent;
// Ici, vous ajouteriez normalement le produit au panier
console.log(`Produit ajouté: ${productName} - ${productPrice}`);
// Animation de feedback
this.innerHTML = '<i class="fas fa-check"></i>';
setTimeout(() => {
this.innerHTML = '<i class="fas fa-plus text-sm"></i>';
}, 1000);
});
});
</script>
<p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=RadMann/dashboardfuture" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
</html>