344 lines
19 KiB
HTML
344 lines
19 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="fr">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||
<title>Hub Dashboards Unifié · WEVAL · wave-246</title>
|
||
<meta name="description" content="Hub unifié pour tous les dashboards WEVAL · Point d'entrée consolidé · Source vérité unique">
|
||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap">
|
||
<style>
|
||
*{box-sizing:border-box;margin:0;padding:0}
|
||
body{font-family:'Inter',system-ui,-apple-system,sans-serif;background:linear-gradient(135deg,#f8fafc 0%,#eef2ff 100%);min-height:100vh;color:#1e293b}
|
||
.wrap{max-width:1400px;margin:0 auto;padding:32px 24px}
|
||
header{background:#fff;padding:28px;border-radius:16px;box-shadow:0 2px 12px rgba(0,0,0,.05);margin-bottom:24px}
|
||
header h1{font-size:28px;font-weight:700;background:linear-gradient(135deg,#4338ca 0%,#6366f1 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:8px}
|
||
header .subtitle{color:#64748b;font-size:15px;line-height:1.5}
|
||
.breadcrumb{font-size:13px;color:#94a3b8;margin-bottom:8px}
|
||
.breadcrumb a{color:#6366f1;text-decoration:none}
|
||
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px}
|
||
.stat{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.04);text-align:center;transition:transform .15s}
|
||
.stat:hover{transform:translateY(-2px)}
|
||
.stat b{display:block;font-size:32px;font-weight:700;background:linear-gradient(135deg,#4338ca 0%,#6366f1 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
|
||
.stat span{font-size:12px;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-top:4px;display:block}
|
||
.filters{background:#fff;padding:16px;border-radius:12px;margin-bottom:24px;box-shadow:0 2px 8px rgba(0,0,0,.04);display:flex;flex-wrap:wrap;gap:8px}
|
||
.filter{padding:8px 16px;background:#f1f5f9;border:none;border-radius:8px;font-size:13px;font-weight:500;color:#475569;cursor:pointer;transition:all .15s}
|
||
.filter:hover{background:#e2e8f0}
|
||
.filter.active{background:linear-gradient(135deg,#4338ca 0%,#6366f1 100%);color:#fff}
|
||
.cat-section{margin-bottom:32px}
|
||
.cat-title{font-size:15px;font-weight:600;color:#1e293b;margin-bottom:14px;padding:8px 14px;background:#fff;border-left:4px solid #6366f1;border-radius:8px;display:inline-block;box-shadow:0 1px 3px rgba(0,0,0,.04)}
|
||
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
|
||
.card{background:#fff;padding:16px;border-radius:12px;box-shadow:0 2px 6px rgba(0,0,0,.04);text-decoration:none;color:inherit;transition:all .15s;border:1px solid transparent;position:relative;overflow:hidden}
|
||
.card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(to bottom,#4338ca,#6366f1);opacity:0;transition:opacity .15s}
|
||
.card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(99,102,241,.15);border-color:rgba(99,102,241,.2)}
|
||
.card:hover::before{opacity:1}
|
||
.card .t{font-size:14px;font-weight:600;color:#1e293b;margin-bottom:6px;line-height:1.35}
|
||
.card .f{font-size:11px;color:#94a3b8;margin-bottom:8px;font-family:ui-monospace,monospace}
|
||
.card .meta{display:flex;gap:8px;align-items:center}
|
||
.card .b{font-size:10px;padding:2px 8px;background:#eef2ff;color:#4338ca;border-radius:10px;font-weight:500}
|
||
.card .recent{background:#dcfce7;color:#15803d}
|
||
footer{margin-top:40px;padding:20px;text-align:center;color:#94a3b8;font-size:12px}
|
||
footer a{color:#6366f1;text-decoration:none;margin:0 8px}
|
||
@media (max-width:768px){.stats{grid-template-columns:repeat(2,1fr)}}
|
||
</style>
|
||
<!-- DOCTRINE-60-UX-ENRICH direct-inject-20260424-140617 -->
|
||
<style id="doctrine60-ux-direct">
|
||
|
||
/* DOCTRINE-60-UX-ENRICH injected-direct */
|
||
body::before {
|
||
content: '';
|
||
position: fixed;
|
||
top: 0; left: 0; width: 100vw; height: 100vh;
|
||
background: radial-gradient(circle at 50% 50%, rgba(100,180,255,0.08), transparent 60%);
|
||
pointer-events: none;
|
||
z-index: -1;
|
||
}
|
||
.card, .kpi, .panel, .btn {
|
||
transition: all 0.3s cubic-bezier(0.2,0,0.1,1);
|
||
}
|
||
.card:hover, .kpi:hover, .panel:hover {
|
||
box-shadow: 0 4px 20px rgba(100,180,255,0.2);
|
||
border-color: rgba(100,180,255,0.5);
|
||
}
|
||
@keyframes pulseD60 {
|
||
0%,100% { opacity: 1; transform: scale(1); }
|
||
50% { opacity: 0.7; transform: scale(1.05); }
|
||
}
|
||
.pulse, .live-indicator, .active, .online {
|
||
animation: pulseD60 3s ease-in-out infinite;
|
||
}
|
||
.modal, .chat, .speech, .overlay {
|
||
backdrop-filter: blur(12px);
|
||
-webkit-backdrop-filter: blur(12px);
|
||
}
|
||
.enter-stagger {
|
||
animation: enterStagD60 0.5s cubic-bezier(0.2,0,0.1,1) forwards;
|
||
}
|
||
@keyframes enterStagD60 {
|
||
from { opacity: 0; transform: translateY(20px); }
|
||
to { opacity: 1; transform: translateY(0); }
|
||
}
|
||
|
||
</style>
|
||
</head>
|
||
<body>
|
||
<div class="wrap">
|
||
<div class="breadcrumb"><a href="/weval-technology-platform.html">WTP</a> · <a href="/dashboards-index.html">Dashboards</a> · Hub unifié</div>
|
||
<header>
|
||
<h1>📊 Hub Dashboards Unifié</h1>
|
||
<div class="subtitle">Point d'entrée unique pour l'ensemble des dashboards WEVAL · Source vérité consolidée · Filtre par catégorie · Aucun doublon · wave-246</div>
|
||
</header>
|
||
|
||
<div class="stats">
|
||
<div class="stat"><b>24</b><span>Dashboards total</span></div>
|
||
<div class="stat"><b>13</b><span>Catégories</span></div>
|
||
<div class="stat"><b>6σ</b><span>Qualité certifiée</span></div>
|
||
<div class="stat"><b>0</b><span>Orphelins</span></div>
|
||
</div>
|
||
|
||
<div class="filters" id="filters">
|
||
<button class="filter active" onclick="filterCat('all',event)">Tous</button>
|
||
<button class="filter" onclick="filterCat('eda63b570db82e05c2fd7b5f0c3bb20f',event)">Audit · 1</button>
|
||
<button class="filter" onclick="filterCat('a71a87d44a628b0b1093fa9e145edcbd',event)">Autres · 1</button>
|
||
<button class="filter" onclick="filterCat('01d3fccafdd317b776011bfd3a695ce7',event)">CRM · 1</button>
|
||
<button class="filter" onclick="filterCat('460b8298e78689d9f11b06eedda97000',event)">Données · 2</button>
|
||
<button class="filter" onclick="filterCat('d2eb53f36437a669148d6ea8de359105',event)">Ethica · 2</button>
|
||
<button class="filter" onclick="filterCat('e4b8c434ce7c342c6632a6e2e4179393',event)">Hub central · 2</button>
|
||
<button class="filter" onclick="filterCat('cba4f4cee5c6a3e6d8be8da68fa1234e',event)">Infrastructure · 3</button>
|
||
<button class="filter" onclick="filterCat('3e8367b591500e0a1536a5a1dccdac56',event)">KPI & Analytics · 2</button>
|
||
<button class="filter" onclick="filterCat('5101e48543e04e2d73565358c9e92bfe',event)">Lean 6σ · 1</button>
|
||
<button class="filter" onclick="filterCat('ebdf3845fcafb2a153e977837fc2728a',event)">Lifecycle · 3</button>
|
||
<button class="filter" onclick="filterCat('62467e2f5bb51a50225989bc125c0597',event)">Pilotage · 2</button>
|
||
<button class="filter" onclick="filterCat('90792de52961c34118f976ebe4af3a75',event)">Tests · 1</button>
|
||
<button class="filter" onclick="filterCat('631994b262608011af3402998beed202',event)">WEVIA · 3</button>
|
||
</div>
|
||
|
||
<div id="content">
|
||
<div class="cat-section" data-cat="eda63b570db82e05c2fd7b5f0c3bb20f">
|
||
<div class="cat-title">Audit · 1</div>
|
||
<div class="grid">
|
||
<a class="card" href="/orphans-dashboard.html" target="_blank">
|
||
<div class="t">Orphans Dashboard — Doctrine 92 Hub Merged</div>
|
||
<div class="f">orphans-dashboard.html</div>
|
||
<div class="meta"><span class="b">14.6 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
<div class="cat-section" data-cat="a71a87d44a628b0b1093fa9e145edcbd">
|
||
<div class="cat-title">Autres · 1</div>
|
||
<div class="grid">
|
||
<a class="card" href="/token-health-dashboard.html" target="_blank">
|
||
<div class="t">Token Health Dashboard · WEVAL</div>
|
||
<div class="f">token-health-dashboard.html</div>
|
||
<div class="meta"><span class="b">7.8 KB</span><span class="b">0j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
<div class="cat-section" data-cat="01d3fccafdd317b776011bfd3a695ce7">
|
||
<div class="cat-title">CRM · 1</div>
|
||
<div class="grid">
|
||
<a class="card" href="/crm-dashboard-live.html" target="_blank">
|
||
<div class="t">CRM Dual Dashboard — WEVAL</div>
|
||
<div class="f">crm-dashboard-live.html</div>
|
||
<div class="meta"><span class="b">10.4 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
<div class="cat-section" data-cat="460b8298e78689d9f11b06eedda97000">
|
||
<div class="cat-title">Données · 2</div>
|
||
<div class="grid">
|
||
<a class="card" href="/contacts-segmentation-dashboard.html" target="_blank">
|
||
<div class="t">Contacts Segmentation · B2B / B2C / Industry</div>
|
||
<div class="f">contacts-segmentation-dashboard.html</div>
|
||
<div class="meta"><span class="b">13.5 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
<a class="card" href="/database-dashboard-live.html" target="_blank">
|
||
<div class="t">Database Dashboard · Live</div>
|
||
<div class="f">database-dashboard-live.html</div>
|
||
<div class="meta"><span class="b">10.7 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
<div class="cat-section" data-cat="d2eb53f36437a669148d6ea8de359105">
|
||
<div class="cat-title">Ethica · 2</div>
|
||
<div class="grid">
|
||
<a class="card" href="/ethica-dashboard-live.html" target="_blank">
|
||
<div class="t">Ethica HCPs Live Dashboard — WEVAL</div>
|
||
<div class="f">ethica-dashboard-live.html</div>
|
||
<div class="meta"><span class="b">10.8 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
<a class="card" href="/medreach-dashboard.html" target="_blank">
|
||
<div class="t">MedReach — Reach Report HCP Maghreb</div>
|
||
<div class="f">medreach-dashboard.html</div>
|
||
<div class="meta"><span class="b">22 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
<div class="cat-section" data-cat="e4b8c434ce7c342c6632a6e2e4179393">
|
||
<div class="cat-title">Hub central · 2</div>
|
||
<div class="grid">
|
||
<a class="card" href="/dashboards-hub.html" target="_blank">
|
||
<div class="t">Dashboards Hub · WEVAL Live</div>
|
||
<div class="f">dashboards-hub.html</div>
|
||
<div class="meta"><span class="b">18.4 KB</span><span class="b">0j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
<a class="card" href="/dashboards-index.html" target="_blank">
|
||
<div class="t">📊 Dashboards Index · WEVAL Consolidated</div>
|
||
<div class="f">dashboards-index.html</div>
|
||
<div class="meta"><span class="b">16.9 KB</span><span class="b">0j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
<div class="cat-section" data-cat="cba4f4cee5c6a3e6d8be8da68fa1234e">
|
||
<div class="cat-title">Infrastructure · 3</div>
|
||
<div class="grid">
|
||
<a class="card" href="/infra-dashboard-live.html" target="_blank">
|
||
<div class="t">Infra Dashboard · Live S204</div>
|
||
<div class="f">infra-dashboard-live.html</div>
|
||
<div class="meta"><span class="b">11.4 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
<a class="card" href="/office-365-dashboard-live.html" target="_blank">
|
||
<div class="t">Office 365 Live Dashboard — WEVAL</div>
|
||
<div class="f">office-365-dashboard-live.html</div>
|
||
<div class="meta"><span class="b">9.9 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
<a class="card" href="/security-dashboard.html" target="_blank">
|
||
<div class="t">WEVAL Security Scanner — Secret Detection</div>
|
||
<div class="f">security-dashboard.html</div>
|
||
<div class="meta"><span class="b">17.4 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
<div class="cat-section" data-cat="3e8367b591500e0a1536a5a1dccdac56">
|
||
<div class="cat-title">KPI & Analytics · 2</div>
|
||
<div class="grid">
|
||
<a class="card" href="/kpi-live-dashboard.html" target="_blank">
|
||
<div class="t">KPI Live Dashboard</div>
|
||
<div class="f">kpi-live-dashboard.html</div>
|
||
<div class="meta"><span class="b">5.5 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
<a class="card" href="/business-kpi-dashboard.php" target="_blank">
|
||
<div class="t">Business KPI Dashboard V83</div>
|
||
<div class="f">business-kpi-dashboard.php</div>
|
||
<div class="meta"><span class="b">22.3 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
<div class="cat-section" data-cat="5101e48543e04e2d73565358c9e92bfe">
|
||
<div class="cat-title">Lean 6σ · 1</div>
|
||
<div class="grid">
|
||
<a class="card" href="/lean6sigma-dashboard.html" target="_blank">
|
||
<div class="t">Lean 6σ Dashboard — WEVIA EM</div>
|
||
<div class="f">lean6sigma-dashboard.html</div>
|
||
<div class="meta"><span class="b">15.7 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
<div class="cat-section" data-cat="ebdf3845fcafb2a153e977837fc2728a">
|
||
<div class="cat-title">Lifecycle · 3</div>
|
||
<div class="grid">
|
||
<a class="card" href="/acquired-dashboard.html" target="_blank">
|
||
<div class="t">WEVAL · Acquis Dashboard — Skills · Tools · RAG · Intents</div>
|
||
<div class="f">acquired-dashboard.html</div>
|
||
<div class="meta"><span class="b">33.5 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
<a class="card" href="/dormant-dashboard-v2.html" target="_blank">
|
||
<div class="t">Dormant Dashboard — WEVIA EM</div>
|
||
<div class="f">dormant-dashboard-v2.html</div>
|
||
<div class="meta"><span class="b">8.2 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
<a class="card" href="/dormant-dashboard.html" target="_blank">
|
||
<div class="t">Dormant Capabilities · NO-DORMANT</div>
|
||
<div class="f">dormant-dashboard.html</div>
|
||
<div class="meta"><span class="b">29.6 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
<div class="cat-section" data-cat="62467e2f5bb51a50225989bc125c0597">
|
||
<div class="cat-title">Pilotage · 2</div>
|
||
<div class="grid">
|
||
<a class="card" href="/em-dashboard.html" target="_blank">
|
||
<div class="t">EM Dashboard · Enterprise Model</div>
|
||
<div class="f">em-dashboard.html</div>
|
||
<div class="meta"><span class="b">9.4 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
<a class="card" href="/paperclip-dashboard.html" target="_blank">
|
||
<div class="t">WEVIA Paperclip Hub</div>
|
||
<div class="f">paperclip-dashboard.html</div>
|
||
<div class="meta"><span class="b">6.4 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
<div class="cat-section" data-cat="90792de52961c34118f976ebe4af3a75">
|
||
<div class="cat-title">Tests · 1</div>
|
||
<div class="grid">
|
||
<a class="card" href="/e2e-dashboard.html" target="_blank">
|
||
<div class="t">E2E Dashboard · 100pct PASS · Business Scenario</div>
|
||
<div class="f">e2e-dashboard.html</div>
|
||
<div class="meta"><span class="b">10.5 KB</span><span class="b">0j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
<div class="cat-section" data-cat="631994b262608011af3402998beed202">
|
||
<div class="cat-title">WEVIA · 3</div>
|
||
<div class="grid">
|
||
<a class="card" href="/wevia-autonomy-dashboard.html" target="_blank">
|
||
<div class="t">🧠 WEVIA Autonomy Dashboard · NeuroRAG v2</div>
|
||
<div class="f">wevia-autonomy-dashboard.html</div>
|
||
<div class="meta"><span class="b">20.4 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
<a class="card" href="/wevia-dashboard.html" target="_blank">
|
||
<div class="t">wevia-dashboard.html</div>
|
||
<div class="f">wevia-dashboard.html</div>
|
||
<div class="meta"><span class="b">0.3 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
<a class="card" href="/wevia-director-dashboard.html" target="_blank">
|
||
<div class="t">WEVIA Director — Autonomous Dashboard</div>
|
||
<div class="f">wevia-director-dashboard.html</div>
|
||
<div class="meta"><span class="b">27.4 KB</span><span class="b">1j</span><span class="b recent">✨ Récent</span></div>
|
||
</a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<footer>
|
||
<a href="/">🏠 Home</a> ·
|
||
<a href="/weval-technology-platform.html">🛠 WTP</a> ·
|
||
<a href="/wevia-master.html">🤖 WEVIA Master</a> ·
|
||
<a href="/wevia-orchestrator.html">🎯 Arena</a> ·
|
||
<a href="/all-ia-hub.html">🧬 AI Hub</a> ·
|
||
<a href="/oss-catalog.html">📦 OSS Catalog</a>
|
||
<br><br>
|
||
wave-246 · consolidation · zero écrasement · zero doublon · source vérité unique
|
||
</footer>
|
||
</div>
|
||
|
||
<script>
|
||
function filterCat(catId, e){
|
||
document.querySelectorAll('.filter').forEach(b=>b.classList.remove('active'));
|
||
e.target.classList.add('active');
|
||
document.querySelectorAll('.cat-section').forEach(s=>{
|
||
if(catId==='all' || s.dataset.cat===catId){s.style.display='block';}
|
||
else{s.style.display='none';}
|
||
});
|
||
}
|
||
</script>
|
||
<!-- DOCTRINE-60-UX-JS --><script id="doctrine60-ux-js-direct">
|
||
|
||
// DOCTRINE-60-UX-JS staggered entrance
|
||
(function(){
|
||
if (!('IntersectionObserver' in window)) return;
|
||
const obs = new IntersectionObserver((entries) => {
|
||
entries.forEach((e, i) => {
|
||
if (e.isIntersecting) {
|
||
setTimeout(() => e.target.classList.add('enter-stagger'), i * 80);
|
||
obs.unobserve(e.target);
|
||
}
|
||
});
|
||
});
|
||
document.querySelectorAll('.card, .kpi, .panel').forEach(el => obs.observe(el));
|
||
})();
|
||
|
||
</script>
|
||
</body>
|
||
</html> |