bleedtime / index.html
mtornani's picture
undefined - Initial Deployment
6cb1d38 verified
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>BLEED TIME SYSTEM | AGNO Framework</title>
<script src="https://cdn.tailwindcss.com"></script>
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<style>
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;700&family=Inter:wght@300;400;600;700&display=swap');
body {
font-family: 'Inter', sans-serif;
background-color: #0a0a0a;
color: #e5e5e5;
}
.mono {
font-family: 'JetBrains Mono', monospace;
}
.bleed-gradient {
background: linear-gradient(135deg, #1a0a0a 0%, #2a0a0a 50%, #3a0a0a 100%);
}
.status-critical {
border-left: 4px solid #ef4444;
}
.status-moderate {
border-left: 4px solid #f59e0b;
}
.status-ok {
border-left: 4px solid #10b981;
}
.chart-container {
position: relative;
height: 200px;
width: 100%;
}
</style>
</head>
<body class="min-h-screen bleed-gradient">
<!-- Landing Page -->
<div id="landing" class="flex flex-col items-center justify-center min-h-screen px-4 transition-opacity duration-500">
<div class="text-center max-w-2xl">
<pre class="mono text-2xl sm:text-4xl text-red-400 mb-6">
░▒▓█ BLEED █▓▒░
</pre>
<h1 class="text-3xl sm:text-5xl font-bold text-white mb-6">TIME SYSTEM</h1>
<p class="text-lg sm:text-xl text-gray-300 mb-10 leading-relaxed">
Optimizing human capital efficiency through real-time bleed analysis.
Our mission is to quantify and minimize productivity leakage in
knowledge work environments.
</p>
<button onclick="enterDashboard()" class="px-8 py-3 bg-red-700 hover:bg-red-600 text-white rounded-lg font-medium transition-colors duration-200">
Enter Dashboard
</button>
</div>
</div>
<!-- Dashboard -->
<div id="dashboard" class="hidden min-h-screen p-4 sm:p-8">
<header class="flex justify-between items-center mb-8">
<div class="flex items-center">
<pre class="mono text-xl sm:text-2xl text-red-400 mr-4">
░▒▓█ BLEED █▓▒░
</pre>
<span class="text-xl sm:text-2xl font-bold text-white">TIME SYSTEM</span>
</div>
<div class="flex space-x-2">
<button id="exportBtn" class="px-4 py-2 bg-gray-800 hover:bg-gray-700 text-gray-200 rounded text-sm flex items-center">
<svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4 mr-2" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4" />
</svg>
Export
</button>
</div>
</header>
<main class="grid grid-cols-1 lg:grid-cols-3 gap-6">
<!-- Summary Cards -->
<div class="lg:col-span-2 grid grid-cols-1 md:grid-cols-2 gap-4">
<div class="bg-gray-900 p-5 rounded-lg border border-gray-800">
<h3 class="text-gray-400 text-sm mb-1">Total Hours (Week)</h3>
<p class="text-3xl font-bold text-white">42.5</p>
<div class="flex items-center mt-2">
<span class="text-xs text-gray-500">+2.1% from last week</span>
</div>
</div>
<div class="bg-gray-900 p-5 rounded-lg border border-gray-800">
<h3 class="text-gray-400 text-sm mb-1">Authentic Hours</h3>
<p class="text-3xl font-bold text-white">31.8</p>
<div class="flex items-center mt-2">
<span class="text-xs text-gray-500">74.8% efficiency</span>
</div>
</div>
<div class="bg-gray-900 p-5 rounded-lg border border-gray-800">
<h3 class="text-gray-400 text-sm mb-1">Bleed %</h3>
<p class="text-3xl font-bold text-red-400">25.2%</p>
<div class="w-full bg-gray-800 rounded-full h-2 mt-3">
<div class="bg-red-500 h-2 rounded-full" style="width: 25.2%"></div>
</div>
</div>
<div class="bg-gray-900 p-5 rounded-lg border border-gray-800">
<h3 class="text-gray-400 text-sm mb-1">Investment Ratio</h3>
<p class="text-3xl font-bold text-green-400">68%</p>
<div class="w-full bg-gray-800 rounded-full h-2 mt-3">
<div class="bg-green-500 h-2 rounded-full" style="width: 68%"></div>
</div>
</div>
<div class="bg-gray-900 p-5 rounded-lg border border-gray-800">
<h3 class="text-gray-400 text-sm mb-1">Economic Cost</h3>
<p class="text-3xl font-bold text-white">€1,284</p>
<div class="flex items-center mt-2">
<span class="text-xs text-gray-500">Weekly impact</span>
</div>
</div>
<div class="bg-gray-900 p-5 rounded-lg border border-gray-800 status-critical">
<h3 class="text-gray-400 text-sm mb-1">Trend Alert</h3>
<div class="flex items-center">
<span class="text-xl font-bold text-red-400 mr-2">Critical</span>
<svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5 text-red-400" viewBox="0 0 20 20" fill="currentColor">
<path fill-rule="evenodd" d="M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z" clip-rule="evenodd" />
</svg>
</div>
<p class="text-sm text-gray-300 mt-2">Bleed increased by 8.2% this week. Immediate action recommended.</p>
</div>
</div>
<!-- Charts Section -->
<div class="lg:col-span-1 space-y-6">
<div class="bg-gray-900 p-5 rounded-lg border border-gray-800">
<h3 class="text-gray-400 text-sm mb-3">Bleed Composition</h3>
<div class="chart-container">
<canvas id="bleedChart"></canvas>
</div>
</div>
<div class="bg-gray-900 p-5 rounded-lg border border-gray-800">
<h3 class="text-gray-400 text-sm mb-3">Investment Allocation</h3>
<div class="chart-container">
<canvas id="investmentChart"></canvas>
</div>
</div>
<div class="bg-gray-900 p-5 rounded-lg border border-gray-800">
<h3 class="text-gray-400 text-sm mb-3">Quick Actions</h3>
<div class="space-y-2">
<button class="w-full px-4 py-2 bg-red-800 hover:bg-red-700 text-white rounded text-sm text-left flex items-center">
<svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4 mr-2" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 10V3L4 14h7v7l9-11h-7z" />
</svg>
Optimize Meeting Schedule
</button>
<button class="w-full px-4 py-2 bg-gray-800 hover:bg-gray-700 text-white rounded text-sm text-left flex items-center">
<svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4 mr-2" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z" />
</svg>
Review Time Blocking
</button>
<button class="w-full px-4 py-2 bg-gray-800 hover:bg-gray-700 text-white rounded text-sm text-left flex items-center">
<svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4 mr-2" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2" />
</svg>
Generate Report
</button>
</div>
</div>
</div>
</main>
</div>
<script>
// Landing to Dashboard transition
function enterDashboard() {
document.getElementById('landing').classList.add('opacity-0');
setTimeout(() => {
document.getElementById('landing').classList.add('hidden');
document.getElementById('dashboard').classList.remove('hidden');
initCharts();
}, 500);
}
// Export button functionality
document.getElementById('exportBtn').addEventListener('click', function() {
// This would be replaced with actual API call in production
alert('Export functionality would connect to backend API here.\nOptions: CSV or JSON format.');
// Simulate download (would be actual in production)
console.log('Exporting data...');
});
// Initialize charts
function initCharts() {
// Bleed Composition Chart
const bleedCtx = document.getElementById('bleedChart').getContext('2d');
new Chart(bleedCtx, {
type: 'doughnut',
data: {
labels: ['Meetings', 'Context Switching', 'Administrative', 'Communication', 'Other'],
datasets: [{
data: [35, 25, 20, 15, 5],
backgroundColor: [
'#ef4444',
'#f97316',
'#f59e0b',
'#ec4899',
'#6b7280'
],
borderWidth: 0
}]
},
options: {
responsive: true,
maintainAspectRatio: false,
cutout: '70%',
plugins: {
legend: {
position: 'bottom',
labels: {
color: '#9ca3af',
font: {
size: 10
},
padding: 20
}
}
}
}
});
// Investment Ratio Chart
const investmentCtx = document.getElementById('investmentChart').getContext('2d');
new Chart(investmentCtx, {
type: 'bar',
data: {
labels: ['Core Work', 'Learning', 'Strategy', 'Networking', 'Admin'],
datasets: [{
data: [45, 20, 15, 15, 5],
backgroundColor: '#10b981',
borderRadius: 4
}]
},
options: {
responsive: true,
maintainAspectRatio: false,
scales: {
y: {
beginAtZero: true,
grid: {
color: 'rgba(55, 65, 81, 0.5)'
},
ticks: {
color: '#9ca3af'
}
},
x: {
grid: {
display: false
},
ticks: {
color: '#9ca3af'
}
}
},
plugins: {
legend: {
display: false
}
}
}
});
}
// Simulate loading data (in production this would be API calls)
document.addEventListener('DOMContentLoaded', function() {
// This is where we would fetch data from the backend
console.log('Dashboard loaded. Ready to fetch data from API.');
});
</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=mtornani/bleedtime" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
</html>