artmoh-tienda / index.html
kam33's picture
Add 3 files
61f99d0 verified
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>LeatherHub - Mayorista de Artículos de Cuero</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>
.sidebar {
transition: all 0.3s ease;
}
.sidebar.collapsed {
width: 70px;
overflow: hidden;
}
.sidebar.collapsed .nav-text {
display: none;
}
.sidebar.collapsed .logo-text {
display: none;
}
.sidebar.collapsed .nav-item {
justify-content: center;
}
.content {
transition: all 0.3s ease;
}
.content.expanded {
margin-left: 70px;
}
@media (max-width: 768px) {
.sidebar {
position: fixed;
z-index: 1000;
height: 100vh;
}
.sidebar.collapsed {
transform: translateX(-100%);
}
.content {
margin-left: 0 !important;
}
}
.product-card:hover {
transform: translateY(-5px);
box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}
.badge-vip {
background: linear-gradient(45deg, #FFD700, #FFA500);
color: white;
}
.badge-new {
background: linear-gradient(45deg, #4CAF50, #8BC34A);
color: white;
}
.badge-lowstock {
background: linear-gradient(45deg, #FF9800, #FFC107);
color: white;
}
.badge-outofstock {
background: linear-gradient(45deg, #F44336, #E91E63);
color: white;
}
</style>
</head>
<body class="bg-gray-50">
<!-- Mobile Menu Button -->
<div class="md:hidden fixed top-4 left-4 z-50">
<button id="mobileMenuBtn" class="p-2 rounded-lg bg-gray-800 text-white">
<i class="fas fa-bars"></i>
</button>
</div>
<!-- Sidebar -->
<div id="sidebar" class="sidebar bg-gray-800 text-white h-screen fixed w-64 shadow-lg">
<div class="p-4 flex items-center space-x-3 border-b border-gray-700">
<div class="bg-amber-600 p-2 rounded-lg">
<i class="fas fa-shopping-bag text-white text-xl"></i>
</div>
<h1 class="logo-text text-xl font-bold">LeatherHub</h1>
</div>
<div class="p-4">
<div class="flex items-center space-x-3 mb-6">
<div class="w-10 h-10 rounded-full bg-amber-500 flex items-center justify-center">
<span class="text-white font-bold">AD</span>
</div>
<div>
<p class="font-medium">Admin User</p>
<p class="text-gray-400 text-sm">Administrador</p>
</div>
</div>
<nav class="space-y-2">
<a href="#" class="nav-item flex items-center space-x-3 p-3 rounded-lg bg-gray-700 text-white">
<i class="fas fa-tachometer-alt"></i>
<span class="nav-text">Dashboard</span>
</a>
<a href="#" class="nav-item flex items-center space-x-3 p-3 rounded-lg hover:bg-gray-700 text-gray-300 hover:text-white">
<i class="fas fa-cash-register"></i>
<span class="nav-text">Ventas</span>
</a>
<a href="#" class="nav-item flex items-center space-x-3 p-3 rounded-lg hover:bg-gray-700 text-gray-300 hover:text-white">
<i class="fas fa-file-invoice-dollar"></i>
<span class="nav-text">Facturación</span>
</a>
<a href="#" class="nav-item flex items-center space-x-3 p-3 rounded-lg hover:bg-gray-700 text-gray-300 hover:text-white">
<i class="fas fa-boxes"></i>
<span class="nav-text">Inventario</span>
</a>
<a href="#" class="nav-item flex items-center space-x-3 p-3 rounded-lg hover:bg-gray-700 text-gray-300 hover:text-white">
<i class="fas fa-users"></i>
<span class="nav-text">Clientes</span>
</a>
<a href="#" class="nav-item flex items-center space-x-3 p-3 rounded-lg hover:bg-gray-700 text-gray-300 hover:text-white">
<i class="fas fa-user-tie"></i>
<span class="nav-text">Empleados</span>
</a>
<a href="#" class="nav-item flex items-center space-x-3 p-3 rounded-lg hover:bg-gray-700 text-gray-300 hover:text-white">
<i class="fas fa-chart-bar"></i>
<span class="nav-text">Reportes</span>
</a>
<a href="#" class="nav-item flex items-center space-x-3 p-3 rounded-lg hover:bg-gray-700 text-gray-300 hover:text-white">
<i class="fas fa-cog"></i>
<span class="nav-text">Configuración</span>
</a>
</nav>
</div>
<div class="absolute bottom-0 w-full p-4 border-t border-gray-700">
<button id="toggleSidebar" class="flex items-center space-x-3 text-gray-300 hover:text-white">
<i class="fas fa-chevron-left"></i>
<span class="nav-text">Contraer menú</span>
</button>
</div>
</div>
<!-- Main Content -->
<div id="content" class="content min-h-screen ml-64 p-6">
<!-- Header -->
<div class="flex justify-between items-center mb-6">
<h2 class="text-2xl font-bold text-gray-800">Dashboard</h2>
<div class="flex items-center space-x-4">
<div class="relative">
<i class="fas fa-search absolute left-3 top-3 text-gray-400"></i>
<input type="text" placeholder="Buscar..." class="pl-10 pr-4 py-2 rounded-lg border border-gray-300 focus:outline-none focus:ring-2 focus:ring-amber-500">
</div>
<button class="p-2 rounded-full bg-gray-200 text-gray-700 hover:bg-gray-300">
<i class="fas fa-bell"></i>
</button>
<button class="p-2 rounded-full bg-gray-200 text-gray-700 hover:bg-gray-300">
<i class="fas fa-question-circle"></i>
</button>
</div>
</div>
<!-- Stats Cards -->
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-6">
<div class="bg-white p-6 rounded-lg shadow-md border-l-4 border-blue-500">
<div class="flex justify-between items-center">
<div>
<p class="text-gray-500">Ventas Hoy</p>
<h3 class="text-2xl font-bold">$24,580</h3>
<p class="text-green-500 text-sm">+12% vs ayer</p>
</div>
<div class="bg-blue-100 p-3 rounded-full">
<i class="fas fa-dollar-sign text-blue-500"></i>
</div>
</div>
</div>
<div class="bg-white p-6 rounded-lg shadow-md border-l-4 border-green-500">
<div class="flex justify-between items-center">
<div>
<p class="text-gray-500">Nuevos Clientes</p>
<h3 class="text-2xl font-bold">8</h3>
<p class="text-green-500 text-sm">+2 vs ayer</p>
</div>
<div class="bg-green-100 p-3 rounded-full">
<i class="fas fa-user-plus text-green-500"></i>
</div>
</div>
</div>
<div class="bg-white p-6 rounded-lg shadow-md border-l-4 border-amber-500">
<div class="flex justify-between items-center">
<div>
<p class="text-gray-500">Productos Bajo Stock</p>
<h3 class="text-2xl font-bold">5</h3>
<p class="text-red-500 text-sm">Reabastecer</p>
</div>
<div class="bg-amber-100 p-3 rounded-full">
<i class="fas fa-exclamation-triangle text-amber-500"></i>
</div>
</div>
</div>
<div class="bg-white p-6 rounded-lg shadow-md border-l-4 border-purple-500">
<div class="flex justify-between items-center">
<div>
<p class="text-gray-500">Órdenes Pendientes</p>
<h3 class="text-2xl font-bold">3</h3>
<p class="text-blue-500 text-sm">Por completar</p>
</div>
<div class="bg-purple-100 p-3 rounded-full">
<i class="fas fa-clipboard-list text-purple-500"></i>
</div>
</div>
</div>
</div>
<!-- Quick Actions -->
<div class="mb-6">
<h3 class="text-lg font-semibold mb-4 text-gray-700">Acciones Rápidas</h3>
<div class="grid grid-cols-2 md:grid-cols-4 gap-4">
<button class="bg-white p-4 rounded-lg shadow-md flex flex-col items-center justify-center hover:bg-gray-50 transition-all">
<div class="bg-blue-100 p-3 rounded-full mb-2">
<i class="fas fa-cash-register text-blue-500 text-xl"></i>
</div>
<span class="text-sm font-medium">Nueva Venta</span>
</button>
<button class="bg-white p-4 rounded-lg shadow-md flex flex-col items-center justify-center hover:bg-gray-50 transition-all">
<div class="bg-green-100 p-3 rounded-full mb-2">
<i class="fas fa-file-invoice text-green-500 text-xl"></i>
</div>
<span class="text-sm font-medium">Crear Factura</span>
</button>
<button class="bg-white p-4 rounded-lg shadow-md flex flex-col items-center justify-center hover:bg-gray-50 transition-all">
<div class="bg-amber-100 p-3 rounded-full mb-2">
<i class="fas fa-box-open text-amber-500 text-xl"></i>
</div>
<span class="text-sm font-medium">Agregar Stock</span>
</button>
<button class="bg-white p-4 rounded-lg shadow-md flex flex-col items-center justify-center hover:bg-gray-50 transition-all">
<div class="bg-purple-100 p-3 rounded-full mb-2">
<i class="fas fa-user-plus text-purple-500 text-xl"></i>
</div>
<span class="text-sm font-medium">Nuevo Cliente</span>
</button>
</div>
</div>
<!-- Recent Sales and Low Stock -->
<div class="grid grid-cols-1 lg:grid-cols-2 gap-6 mb-6">
<!-- Recent Sales -->
<div class="bg-white p-6 rounded-lg shadow-md">
<div class="flex justify-between items-center mb-4">
<h3 class="text-lg font-semibold">Ventas Recientes</h3>
<a href="#" class="text-sm text-blue-500 hover:underline">Ver todas</a>
</div>
<div class="space-y-4">
<div class="flex justify-between items-center p-3 hover:bg-gray-50 rounded-lg">
<div>
<p class="font-medium">#ORD-10025</p>
<p class="text-sm text-gray-500">Cliente: Tienda Elegante</p>
</div>
<div class="text-right">
<p class="font-medium">$1,250.00</p>
<p class="text-sm text-gray-500">Hace 15 min</p>
</div>
</div>
<div class="flex justify-between items-center p-3 hover:bg-gray-50 rounded-lg">
<div>
<p class="font-medium">#ORD-10024</p>
<p class="text-sm text-gray-500">Cliente: Boutique del Cuero</p>
</div>
<div class="text-right">
<p class="font-medium">$890.00</p>
<p class="text-sm text-gray-500">Hace 1 hora</p>
</div>
</div>
<div class="flex justify-between items-center p-3 hover:bg-gray-50 rounded-lg">
<div>
<p class="font-medium">#ORD-10023</p>
<p class="text-sm text-gray-500">Cliente: Accesorios VIP</p>
<span class="badge-vip text-xs px-2 py-1 rounded-full">VIP</span>
</div>
<div class="text-right">
<p class="font-medium">$3,450.00</p>
<p class="text-sm text-gray-500">Hace 3 horas</p>
</div>
</div>
<div class="flex justify-between items-center p-3 hover:bg-gray-50 rounded-lg">
<div>
<p class="font-medium">#ORD-10022</p>
<p class="text-sm text-gray-500">Cliente: Moda y Estilo</p>
</div>
<div class="text-right">
<p class="font-medium">$1,780.00</p>
<p class="text-sm text-gray-500">Hoy, 10:45 AM</p>
</div>
</div>
</div>
</div>
<!-- Low Stock Products -->
<div class="bg-white p-6 rounded-lg shadow-md">
<div class="flex justify-between items-center mb-4">
<h3 class="text-lg font-semibold">Productos Bajo Stock</h3>
<a href="#" class="text-sm text-blue-500 hover:underline">Ver inventario</a>
</div>
<div class="space-y-4">
<div class="flex items-center p-3 hover:bg-gray-50 rounded-lg">
<div class="w-16 h-16 bg-gray-200 rounded-lg mr-4 overflow-hidden">
<img src="https://via.placeholder.com/100" alt="Product" class="w-full h-full object-cover">
</div>
<div class="flex-1">
<p class="font-medium">Cinturón de Cuero Negro</p>
<p class="text-sm text-gray-500">SKU: CIN-NEG-001</p>
</div>
<div class="text-right">
<span class="badge-lowstock text-xs px-2 py-1 rounded-full">Stock: 3</span>
<p class="text-sm text-gray-500">Mín: 5</p>
</div>
</div>
<div class="flex items-center p-3 hover:bg-gray-50 rounded-lg">
<div class="w-16 h-16 bg-gray-200 rounded-lg mr-4 overflow-hidden">
<img src="https://via.placeholder.com/100" alt="Product" class="w-full h-full object-cover">
</div>
<div class="flex-1">
<p class="font-medium">Bolso de Cuero Marrón</p>
<p class="text-sm text-gray-500">SKU: BOL-MAR-002</p>
</div>
<div class="text-right">
<span class="badge-lowstock text-xs px-2 py-1 rounded-full">Stock: 2</span>
<p class="text-sm text-gray-500">Mín: 5</p>
</div>
</div>
<div class="flex items-center p-3 hover:bg-gray-50 rounded-lg">
<div class="w-16 h-16 bg-gray-200 rounded-lg mr-4 overflow-hidden">
<img src="https://via.placeholder.com/100" alt="Product" class="w-full h-full object-cover">
</div>
<div class="flex-1">
<p class="font-medium">Herraje Dorado Mediano</p>
<p class="text-sm text-gray-500">SKU: HER-DOR-003</p>
</div>
<div class="text-right">
<span class="badge-outofstock text-xs px-2 py-1 rounded-full">Stock: 0</span>
<p class="text-sm text-gray-500">Mín: 10</p>
</div>
</div>
<div class="flex items-center p-3 hover:bg-gray-50 rounded-lg">
<div class="w-16 h-16 bg-gray-200 rounded-lg mr-4 overflow-hidden">
<img src="https://via.placeholder.com/100" alt="Product" class="w-full h-full object-cover">
</div>
<div class="flex-1">
<p class="font-medium">Cartera de Cuero Negro</p>
<p class="text-sm text-gray-500">SKU: CAR-NEG-004</p>
</div>
<div class="text-right">
<span class="badge-lowstock text-xs px-2 py-1 rounded-full">Stock: 4</span>
<p class="text-sm text-gray-500">Mín: 6</p>
</div>
</div>
</div>
</div>
</div>
<!-- Top Selling Products -->
<div class="bg-white p-6 rounded-lg shadow-md mb-6">
<div class="flex justify-between items-center mb-4">
<h3 class="text-lg font-semibold">Productos Más Vendidos</h3>
<div class="flex space-x-2">
<select class="border rounded-lg px-3 py-1 text-sm focus:outline-none focus:ring-2 focus:ring-amber-500">
<option>Esta semana</option>
<option>Este mes</option>
<option>Este año</option>
</select>
<a href="#" class="text-sm text-blue-500 hover:underline">Ver reporte</a>
</div>
</div>
<div class="grid grid-cols-2 md:grid-cols-3 lg:grid-cols-5 gap-4">
<div class="product-card bg-white border border-gray-200 rounded-lg p-4 text-center transition-all">
<div class="w-full h-32 bg-gray-200 rounded-lg mb-3 overflow-hidden mx-auto">
<img src="https://via.placeholder.com/150" alt="Product" class="w-full h-full object-cover">
</div>
<h4 class="font-medium text-sm mb-1">Cinturón Negro</h4>
<p class="text-gray-500 text-xs mb-2">SKU: CIN-NEG-001</p>
<p class="text-green-600 font-bold">$45.00</p>
<p class="text-xs text-gray-500">Vendidos: 28</p>
</div>
<div class="product-card bg-white border border-gray-200 rounded-lg p-4 text-center transition-all">
<div class="w-full h-32 bg-gray-200 rounded-lg mb-3 overflow-hidden mx-auto">
<img src="https://via.placeholder.com/150" alt="Product" class="w-full h-full object-cover">
</div>
<h4 class="font-medium text-sm mb-1">Bolso Marrón</h4>
<p class="text-gray-500 text-xs mb-2">SKU: BOL-MAR-002</p>
<p class="text-green-600 font-bold">$120.00</p>
<p class="text-xs text-gray-500">Vendidos: 15</p>
</div>
<div class="product-card bg-white border border-gray-200 rounded-lg p-4 text-center transition-all">
<div class="w-full h-32 bg-gray-200 rounded-lg mb-3 overflow-hidden mx-auto">
<img src="https://via.placeholder.com/150" alt="Product" class="w-full h-full object-cover">
</div>
<h4 class="font-medium text-sm mb-1">Herraje Dorado</h4>
<p class="text-gray-500 text-xs mb-2">SKU: HER-DOR-003</p>
<p class="text-green-600 font-bold">$8.50</p>
<p class="text-xs text-gray-500">Vendidos: 42</p>
</div>
<div class="product-card bg-white border border-gray-200 rounded-lg p-4 text-center transition-all">
<div class="w-full h-32 bg-gray-200 rounded-lg mb-3 overflow-hidden mx-auto">
<img src="https://via.placeholder.com/150" alt="Product" class="w-full h-full object-cover">
</div>
<h4 class="font-medium text-sm mb-1">Cartera Negra</h4>
<p class="text-gray-500 text-xs mb-2">SKU: CAR-NEG-004</p>
<p class="text-green-600 font-bold">$85.00</p>
<p class="text-xs text-gray-500">Vendidos: 12</p>
</div>
<div class="product-card bg-white border border-gray-200 rounded-lg p-4 text-center transition-all">
<div class="w-full h-32 bg-gray-200 rounded-lg mb-3 overflow-hidden mx-auto">
<img src="https://via.placeholder.com/150" alt="Product" class="w-full h-full object-cover">
</div>
<h4 class="font-medium text-sm mb-1">Cinturón Café</h4>
<p class="text-gray-500 text-xs mb-2">SKU: CIN-CAF-005</p>
<p class="text-green-600 font-bold">$50.00</p>
<p class="text-xs text-gray-500">Vendidos: 18</p>
</div>
</div>
</div>
<!-- Sales Chart -->
<div class="bg-white p-6 rounded-lg shadow-md">
<div class="flex justify-between items-center mb-4">
<h3 class="text-lg font-semibold">Ventas Mensuales</h3>
<select class="border rounded-lg px-3 py-1 text-sm focus:outline-none focus:ring-2 focus:ring-amber-500">
<option>2023</option>
<option>2022</option>
<option>2021</option>
</select>
</div>
<div class="h-64">
<!-- Chart placeholder - would be replaced with actual chart library in production -->
<div class="w-full h-full bg-gray-100 rounded-lg flex items-center justify-center text-gray-400">
<i class="fas fa-chart-line text-4xl"></i>
<p class="ml-3">Gráfico de Ventas</p>
</div>
</div>
</div>
</div>
<!-- Mobile Bottom Navigation -->
<div class="md:hidden fixed bottom-0 left-0 right-0 bg-white shadow-lg border-t border-gray-200 flex justify-around items-center p-2 z-40">
<a href="#" class="flex flex-col items-center p-2 text-blue-500">
<i class="fas fa-tachometer-alt"></i>
<span class="text-xs mt-1">Inicio</span>
</a>
<a href="#" class="flex flex-col items-center p-2 text-gray-500">
<i class="fas fa-cash-register"></i>
<span class="text-xs mt-1">Ventas</span>
</a>
<a href="#" class="flex flex-col items-center p-2 text-gray-500">
<i class="fas fa-boxes"></i>
<span class="text-xs mt-1">Inventario</span>
</a>
<a href="#" class="flex flex-col items-center p-2 text-gray-500">
<i class="fas fa-users"></i>
<span class="text-xs mt-1">Clientes</span>
</a>
</div>
<script>
// Toggle sidebar
const toggleSidebar = document.getElementById('toggleSidebar');
const sidebar = document.getElementById('sidebar');
const content = document.getElementById('content');
const mobileMenuBtn = document.getElementById('mobileMenuBtn');
toggleSidebar.addEventListener('click', () => {
sidebar.classList.toggle('collapsed');
content.classList.toggle('expanded');
// Change icon and text
if (sidebar.classList.contains('collapsed')) {
toggleSidebar.innerHTML = '<i class="fas fa-chevron-right"></i><span class="nav-text">Expandir</span>';
} else {
toggleSidebar.innerHTML = '<i class="fas fa-chevron-left"></i><span class="nav-text">Contraer</span>';
}
});
// Mobile menu toggle
mobileMenuBtn.addEventListener('click', () => {
sidebar.classList.toggle('collapsed');
});
// Close sidebar when clicking outside on mobile
document.addEventListener('click', (e) => {
if (window.innerWidth <= 768 && !sidebar.contains(e.target) && e.target !== mobileMenuBtn) {
sidebar.classList.add('collapsed');
}
});
// Simulate loading
document.addEventListener('DOMContentLoaded', () => {
setTimeout(() => {
document.body.classList.remove('opacity-0');
}, 300);
});
</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=kam33/artmoh-tienda" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
</html>