| | <!DOCTYPE html> |
| | <html lang="en"> |
| | <head> |
| | <meta charset="UTF-8"> |
| | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| | <title>Student Hub - EduSphere</title> |
| | <link rel="icon" type="image/x-icon" href="/static/favicon.ico"> |
| | <script src="https://cdn.tailwindcss.com"></script> |
| | <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script> |
| | <script src="https://unpkg.com/feather-icons"></script> |
| | <script> |
| | tailwind.config = { |
| | darkMode: 'class', |
| | theme: { |
| | extend: { |
| | colors: { |
| | primary: '#3b82f6', |
| | secondary: '#8b5cf6', |
| | accent: '#06b6d4' |
| | } |
| | } |
| | } |
| | } |
| | </script> |
| | <style> |
| | .glass-effect { |
| | background: rgba(255, 255, 255, 0.1); |
| | backdrop-filter: blur(10px); |
| | border: 1px solid rgba(255, 255, 255, 0.2); |
| | } |
| | .dark .glass-effect { |
| | background: rgba(0, 0, 0, 0.2); |
| | backdrop-filter: blur(10px); |
| | border: 1px solid rgba(255, 255, 255, 0.1); |
| | } |
| | .progress-ring { |
| | transition: stroke-dashoffset 0.35s; |
| | transform: rotate(-90deg); |
| | transform-origin: 50% 50%; |
| | } |
| | </style> |
| | </head> |
| | <body class="bg-gradient-to-br from-blue-50 to-indigo-100 dark:from-gray-900 dark:to-gray-800 min-h-screen transition-colors duration-300"> |
| | |
| | <div class="fixed top-4 right-4 z-50"> |
| | <button id="themeToggle" class="glass-effect rounded-full p-3 text-gray-600 dark:text-gray-300 hover:scale-110 transition-transform duration-300"> |
| | <i data-feather="moon" class="w-5 h-5"></i> |
| | </button> |
| | </div> |
| |
|
| | |
| | <nav class="glass-effect border-b border-gray-200 dark:border-gray-700"> |
| | <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"> |
| | <div class="flex justify-between items-center py-4"> |
| | <div class="flex items-center space-x-4"> |
| | <a href="index.html" class="flex items-center space-x-3"> |
| | <div class="w-10 h-10 bg-gradient-to-r from-primary to-secondary rounded-lg flex items-center justify-center"> |
| | <i data-feather="graduation-cap" class="text-white"></i> |
| | </div> |
| | <div> |
| | <h1 class="text-white font-bold text-xl">Student Hub</h1> |
| | <p class="text-gray-400 text-sm">Track your progress and access learning materials</p> |
| | </div> |
| | </a> |
| | <div class="flex items-center space-x-4"> |
| | <span class="text-white">Ahmed Hassan</span> |
| | <button class="text-gray-400 hover:text-white"> |
| | <i data-feather="log-out" class="w-5 h-5"></i> |
| | </button> |
| | </div> |
| | </div> |
| | </div> |
| | </nav> |
| |
|
| | <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8"> |
| | |
| | <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-8"> |
| | <div class="glass-effect rounded-xl p-6 text-white"> |
| | <div class="text-center"> |
| | <div class="relative w-20 h-20 mx-auto mb-4"> |
| | <svg class="w-20 h-20"> |
| | <circle class="text-gray-700" stroke-width="8" stroke="currentColor" fill="transparent" r="36" cx="40" cy="40"></circle> |
| | <circle class="progress-ring text-green-400" stroke-width="8" stroke-dasharray="226.1946710584651" stroke-dashoffset="0" stroke="currentColor" fill="transparent" r="36" cx="40" cy="40" stroke-linecap="round"></circle> |
| | </svg> |
| | <div class="absolute inset-0 flex items-center justify-center"> |
| | <span class="text-white font-bold">87%</span> |
| | </div> |
| | </div> |
| | <p class="text-gray-300">Overall Progress</p> |
| | </div> |
| | </div> |
| | <div class="glass-effect rounded-xl p-6 text-white"> |
| | <div class="text-center"> |
| | <div class="text-3xl font-bold mb-2">94%</p> |
| | <p class="text-gray-300">Attendance Rate</p> |
| | </div> |
| | </div> |
| | <div class="glass-effect rounded-xl p-6 text-white"> |
| | <div class="text-center"> |
| | <i data-feather="award" class="w-8 h-8 text-yellow-400 mx-auto mb-2"></i> |
| | <p class="text-3xl font-bold">A</p> |
| | <p class="text-gray-300">Current Grade</p> |
| | </div> |
| | </div> |
| | <div class="glass-effect rounded-xl p-6 text-white"> |
| | <div class="text-center"> |
| | <i data-feather="file-text" class="w-8 h-8 text-blue-400 mx-auto mb-2"></i> |
| | <p class="text-3xl font-bold">12</p> |
| | <p class="text-gray-300">Completed Courses</p> |
| | </div> |
| | </div> |
| | </div> |
| |
|
| | |
| | <div class="grid grid-cols-1 lg:grid-cols-3 gap-8"> |
| | |
| | <div class="glass-effect rounded-xl p-6"> |
| | <h3 class="text-xl font-bold text-white mb-4">Attendance Overview</h3> |
| | <div class="space-y-4"> |
| | <div class="flex justify-between items-center"> |
| | <span class="text-gray-300">Mathematics</span> |
| | <span class="text-green-400">96%</span> |
| | </div> |
| | <div class="flex justify-between items-center"> |
| | <span class="text-gray-300">Science</span> |
| | <span class="text-green-400">92%</span> |
| | </div> |
| | <div class="flex justify-between items-center"> |
| | <span class="text-gray-300">English</span> |
| | <span class="text-yellow-400">88%</span> |
| | </div> |
| | </div> |
| | </div> |
| |
|
| | |
| | <div class="glass-effect rounded-xl p-6"> |
| | <h3 class="text-xl font-bold text-white mb-4">Current Grades</h4> |
| | <div class="space-y-3"> |
| | <div> |
| | <div class="flex justify-between mb-1"> |
| | <span class="text-gray-300">History</span> |
| | <span class="text-green-400">A</span> |
| | </div> |
| | <div> |
| | <span class="text-gray-300">Physics</span> |
| | <span class="text-green-400">A-</span> |
| | </div> |
| | </div> |
| | </div> |
| | </div> |
| |
|
| | |
| | <div class="glass-effect rounded-xl p-6"> |
| | <h3 class="text-xl font-bold text-white mb-4">Learning Materials</h4> |
| | <div class="space-y-3"> |
| | <div class="flex items-center space-x-3"> |
| | <i data-feather="download" class="w-4 h-4 text-gray-400"></i> |
| | <div> |
| | <h4 class="text-white font-semibold">Mathematics Notes</h4> |
| | <p class="text-gray-400 text-sm">Prof. Johnson • Updated today</p> |
| | </div> |
| | </div> |
| | </div> |
| | </div> |
| | </div> |
| | </div> |
| | </div> |
| |
|
| | <script> |
| | |
| | const themeToggle = document.getElementById('themeToggle'); |
| | const themeIcon = themeToggle.querySelector('i'); |
| | |
| | themeToggle.addEventListener('click', () => { |
| | if (document.documentElement.classList.contains('dark')) { |
| | document.documentElement.classList.remove('dark'); |
| | themeIcon.setAttribute('data-feather', 'moon'); |
| | } else { |
| | document.documentElement.classList.add('dark'); |
| | themeIcon.setAttribute('data-feather', 'sun'); |
| | } |
| | feather.replace(); |
| | }); |
| | |
| | |
| | feather.replace(); |
| | </script> |
| | </body> |
| | </html> |