tuandesu commited on
Commit
f446185
·
verified ·
1 Parent(s): 61c0b87

bạn liên quan gì đến DeepSeek?

Browse files
Files changed (5) hide show
  1. README.md +9 -5
  2. components/navbar.js +147 -0
  3. index.html +324 -19
  4. script.js +58 -0
  5. style.css +42 -18
README.md CHANGED
@@ -1,10 +1,14 @@
1
  ---
2
- title: Undefined
3
- emoji: 📉
4
- colorFrom: red
5
- colorTo: red
6
  sdk: static
7
  pinned: false
 
 
8
  ---
9
 
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
 
 
1
  ---
2
+ title: undefined
3
+ colorFrom: blue
4
+ colorTo: gray
5
+ emoji: 🐳
6
  sdk: static
7
  pinned: false
8
+ tags:
9
+ - deepsite-v3
10
  ---
11
 
12
+ # Welcome to your new DeepSite project!
13
+ This project was created with [DeepSite](https://huggingface.co/deepsite).
14
+
components/navbar.js ADDED
@@ -0,0 +1,147 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ class CustomNavbar extends HTMLElement {
2
+ connectedCallback() {
3
+ this.attachShadow({ mode: 'open' });
4
+ this.shadowRoot.innerHTML = `
5
+ <style>
6
+ nav {
7
+ background: linear-gradient(135deg, rgba(99, 102, 241, 0.95) 0%, rgba(139, 92, 246, 0.95) 100%);
8
+ backdrop-filter: blur(10px);
9
+ padding: 0.75rem 1.5rem;
10
+ display: flex;
11
+ justify-content: space-between;
12
+ align-items: center;
13
+ position: fixed;
14
+ top: 0;
15
+ left: 0;
16
+ right: 0;
17
+ z-index: 50;
18
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
19
+ }
20
+ .logo {
21
+ color: white;
22
+ font-weight: 600;
23
+ font-size: 1.25rem;
24
+ display: flex;
25
+ align-items: center;
26
+ }
27
+ .logo i {
28
+ margin-right: 0.75rem;
29
+ }
30
+ .right-section {
31
+ display: flex;
32
+ align-items: center;
33
+ gap: 1.5rem;
34
+ }
35
+ .user-menu {
36
+ display: flex;
37
+ align-items: center;
38
+ cursor: pointer;
39
+ position: relative;
40
+ }
41
+ .avatar {
42
+ width: 2.5rem;
43
+ height: 2.5rem;
44
+ border-radius: 50%;
45
+ object-fit: cover;
46
+ border: 2px solid rgba(255, 255, 255, 0.2);
47
+ }
48
+ .dropdown {
49
+ position: absolute;
50
+ top: 100%;
51
+ right: 0;
52
+ background: white;
53
+ min-width: 12rem;
54
+ border-radius: 0.5rem;
55
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
56
+ padding: 0.5rem 0;
57
+ opacity: 0;
58
+ visibility: hidden;
59
+ transform: translateY(0.5rem);
60
+ transition: all 0.2s ease;
61
+ z-index: 10;
62
+ }
63
+ .dark .dropdown {
64
+ background: #1f2937;
65
+ }
66
+ .dropdown.active {
67
+ opacity: 1;
68
+ visibility: visible;
69
+ transform: translateY(0);
70
+ }
71
+ .dropdown-item {
72
+ padding: 0.5rem 1rem;
73
+ color: #4b5563;
74
+ display: flex;
75
+ align-items: center;
76
+ }
77
+ .dark .dropdown-item {
78
+ color: #d1d5db;
79
+ }
80
+ .dropdown-item:hover {
81
+ background: #f3f4f6;
82
+ }
83
+ .dark .dropdown-item:hover {
84
+ background: #374151;
85
+ }
86
+ .dropdown-item i {
87
+ margin-right: 0.75rem;
88
+ width: 1rem;
89
+ }
90
+ .notifications {
91
+ position: relative;
92
+ }
93
+ .badge {
94
+ position: absolute;
95
+ top: -0.25rem;
96
+ right: -0.25rem;
97
+ background: #ef4444;
98
+ color: white;
99
+ border-radius: 50%;
100
+ width: 1.25rem;
101
+ height: 1.25rem;
102
+ display: flex;
103
+ align-items: center;
104
+ justify-content: center;
105
+ font-size: 0.75rem;
106
+ font-weight: 600;
107
+ }
108
+ .menu-button {
109
+ display: none;
110
+ background: none;
111
+ border: none;
112
+ color: white;
113
+ cursor: pointer;
114
+ }
115
+ @media (max-width: 768px) {
116
+ .menu-button {
117
+ display: block;
118
+ }
119
+ }
120
+ </style>
121
+ <nav>
122
+ <div class="logo">
123
+ <i data-feather="activity"></i>
124
+ <span>DashVista</span>
125
+ </div>
126
+ <div class="right-section">
127
+ <div class="notifications">
128
+ <i data-feather="bell"></i>
129
+ <span class="badge">3</span>
130
+ </div>
131
+ <div class="user-menu">
132
+ <img src="http://static.photos/people/200x200/1" alt="User" class="avatar">
133
+ <div class="dropdown">
134
+ <a href="#" class="dropdown-item">
135
+ <i data-feather="user"></i>
136
+ <span>Profile</span>
137
+ </a>
138
+ <a href="#" class="dropdown-item">
139
+ <i data-feather="settings"></i>
140
+ <span>Settings</span>
141
+ </a>
142
+ <a href="#" class="dropdown-item">
143
+ <i data-feather="log-out"></i>
144
+ <span>Logout</span>
145
+ </a>
146
+ </div>
147
+ {"ok":false,"message":"Request timeout: The AI model took too long to respond. Please try again with a simpler prompt or try a different model."}
index.html CHANGED
@@ -1,19 +1,324 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
19
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en" class="dark">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>DashVista | Dashboard</title>
7
+ <link rel="stylesheet" href="style.css">
8
+ <script src="https://cdn.tailwindcss.com"></script>
9
+ <script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
10
+ <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
11
+ <script src="https://unpkg.com/feather-icons"></script>
12
+ <script src="https://cdn.jsdelivr.net/npm/vanta@latest/dist/vanta.net.min.js"></script>
13
+ <script>
14
+ tailwind.config = {
15
+ darkMode: 'class',
16
+ theme: {
17
+ extend: {
18
+ colors: {
19
+ primary: {
20
+ 500: '#6366f1',
21
+ 600: '#4f46e5',
22
+ },
23
+ secondary: {
24
+ 500: '#8b5cf6',
25
+ 600: '#7c3aed',
26
+ }
27
+ }
28
+ }
29
+ }
30
+ }
31
+ </script>
32
+ </head>
33
+ <body class="bg-gray-50 dark:bg-gray-900 min-h-screen">
34
+ <custom-navbar></custom-navbar>
35
+ <custom-sidebar></custom-sidebar>
36
+
37
+ <main class="lg:ml-64 pt-16 px-4">
38
+ <div class="py-6">
39
+ <div class="max-w-7xl mx-auto">
40
+ <!-- Header -->
41
+ <div class="flex flex-col md:flex-row justify-between items-start md:items-center mb-6">
42
+ <h1 class="text-2xl font-bold text-gray-900 dark:text-white">Dashboard Overview</h1>
43
+ <div class="flex items-center space-x-4 mt-4 md:mt-0">
44
+ <button id="theme-toggle" class="p-2 rounded-lg bg-gray-100 dark:bg-gray-700">
45
+ <i data-feather="moon" class="hidden dark:block text-gray-300"></i>
46
+ <i data-feather="sun" class="dark:hidden text-gray-500"></i>
47
+ </button>
48
+ <div class="relative">
49
+ <input type="text" placeholder="Search..." class="pl-10 pr-4 py-2 rounded-lg bg-gray-100 dark:bg-gray-700 border-none focus:ring-2 focus:ring-primary-500">
50
+ <i data-feather="search" class="absolute left-3 top-2.5 text-gray-500 dark:text-gray-400"></i>
51
+ </div>
52
+ </div>
53
+ </div>
54
+
55
+ <!-- Stats Cards -->
56
+ <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-8">
57
+ <div class="bg-white dark:bg-gray-800 rounded-xl shadow p-6 border-l-4 border-primary-500">
58
+ <div class="flex items-center justify-between">
59
+ <div>
60
+ <p class="text-sm font-medium text-gray-500 dark:text-gray-400">Total Revenue</p>
61
+ <p class="text-2xl font-semibold text-gray-900 dark:text-white">$45,231</p>
62
+ <p class="text-xs text-green-500 mt-1">+12.5% from last month</p>
63
+ </div>
64
+ <div class="p-3 rounded-lg bg-primary-100 dark:bg-primary-900/50">
65
+ <i data-feather="dollar-sign" class="text-primary-500 dark:text-primary-300"></i>
66
+ </div>
67
+ </div>
68
+ </div>
69
+
70
+ <div class="bg-white dark:bg-gray-800 rounded-xl shadow p-6 border-l-4 border-secondary-500">
71
+ <div class="flex items-center justify-between">
72
+ <div>
73
+ <p class="text-sm font-medium text-gray-500 dark:text-gray-400">Active Users</p>
74
+ <p class="text-2xl font-semibold text-gray-900 dark:text-white">2,431</p>
75
+ <p class="text-xs text-green-500 mt-1">+8.3% from last month</p>
76
+ </div>
77
+ <div class="p-3 rounded-lg bg-secondary-100 dark:bg-secondary-900/50">
78
+ <i data-feather="users" class="text-secondary-500 dark:text-secondary-300"></i>
79
+ </div>
80
+ </div>
81
+ </div>
82
+
83
+ <div class="bg-white dark:bg-gray-800 rounded-xl shadow p-6 border-l-4 border-green-500">
84
+ <div class="flex items-center justify-between">
85
+ <div>
86
+ <p class="text-sm font-medium text-gray-500 dark:text-gray-400">New Orders</p>
87
+ <p class="text-2xl font-semibold text-gray-900 dark:text-white">1,253</p>
88
+ <p class="text-xs text-green-500 mt-1">+3.2% from last month</p>
89
+ </div>
90
+ <div class="p-3 rounded-lg bg-green-100 dark:bg-green-900/50">
91
+ <i data-feather="shopping-cart" class="text-green-500 dark:text-green-300"></i>
92
+ </div>
93
+ </div>
94
+ </div>
95
+
96
+ <div class="bg-white dark:bg-gray-800 rounded-xl shadow p-6 border-l-4 border-yellow-500">
97
+ <div class="flex items-center justify-between">
98
+ <div>
99
+ <p class="text-sm font-medium text-gray-500 dark:text-gray-400">Pending Tasks</p>
100
+ <p class="text-2xl font-semibold text-gray-900 dark:text-white">24</p>
101
+ <p class="text-xs text-red-500 mt-1">-2.5% from last month</p>
102
+ </div>
103
+ <div class="p-3 rounded-lg bg-yellow-100 dark:bg-yellow-900/50">
104
+ <i data-feather="clock" class="text-yellow-500 dark:text-yellow-300"></i>
105
+ </div>
106
+ </div>
107
+ </div>
108
+ </div>
109
+
110
+ <!-- Charts Row -->
111
+ <div class="grid grid-cols-1 lg:grid-cols-2 gap-6 mb-8">
112
+ <!-- Main Chart -->
113
+ <div class="bg-white dark:bg-gray-800 rounded-xl shadow p-6">
114
+ <div class="flex items-center justify-between mb-4">
115
+ <h2 class="text-lg font-semibold text-gray-900 dark:text-white">Revenue Overview</h2>
116
+ <div class="flex space-x-2">
117
+ <button class="px-3 py-1 text-xs rounded-lg bg-primary-500 text-white">Monthly</button>
118
+ <button class="px-3 py-1 text-xs rounded-lg bg-gray-100 dark:bg-gray-700 text-gray-700 dark:text-gray-300">Weekly</button>
119
+ </div>
120
+ </div>
121
+ <div class="h-80">
122
+ <canvas id="mainChart"></canvas>
123
+ </div>
124
+ </div>
125
+
126
+ <!-- Pie Chart -->
127
+ <div class="bg-white dark:bg-gray-800 rounded-xl shadow p-6">
128
+ <h2 class="text-lg font-semibold text-gray-900 dark:text-white mb-4">Traffic Sources</h2>
129
+ <div class="h-80">
130
+ <canvas id="pieChart"></canvas>
131
+ </div>
132
+ </div>
133
+ </div>
134
+
135
+ <!-- Recent Activities -->
136
+ <div class="bg-white dark:bg-gray-800 rounded-xl shadow overflow-hidden mb-8">
137
+ <div class="px-6 py-4 border-b border-gray-200 dark:border-gray-700">
138
+ <h2 class="text-lg font-semibold text-gray-900 dark:text-white">Recent Activities</h2>
139
+ </div>
140
+ <div class="divide-y divide-gray-200 dark:divide-gray-700">
141
+ <div class="p-4 hover:bg-gray-50 dark:hover:bg-gray-700 transition-colors">
142
+ <div class="flex items-start">
143
+ <div class="p-2 rounded-lg bg-primary-100 dark:bg-primary-900/50 mr-4">
144
+ <i data-feather="dollar-sign" class="text-primary-500 dark:text-primary-300"></i>
145
+ </div>
146
+ <div class="flex-1">
147
+ <p class="text-sm font-medium text-gray-900 dark:text-white">New order #4321</p>
148
+ <p class="text-xs text-gray-500 dark:text-gray-400">Customer placed a new order for $129.99</p>
149
+ <p class="text-xs text-gray-400 mt-1">2 minutes ago</p>
150
+ </div>
151
+ </div>
152
+ </div>
153
+ <div class="p-4 hover:bg-gray-50 dark:hover:bg-gray-700 transition-colors">
154
+ <div class="flex items-start">
155
+ <div class="p-2 rounded-lg bg-green-100 dark:bg-green-900/50 mr-4">
156
+ <i data-feather="user-plus" class="text-green-500 dark:text-green-300"></i>
157
+ </div>
158
+ <div class="flex-1">
159
+ <p class="text-sm font-medium text-gray-900 dark:text-white">New user registered</p>
160
+ <p class="text-xs text-gray-500 dark:text-gray-400">John Doe created a new account</p>
161
+ <p class="text-xs text-gray-400 mt-1">15 minutes ago</p>
162
+ </div>
163
+ </div>
164
+ </div>
165
+ <div class="p-4 hover:bg-gray-50 dark:hover:bg-gray-700 transition-colors">
166
+ <div class="flex items-start">
167
+ <div class="p-2 rounded-lg bg-secondary-100 dark:bg-secondary-900/50 mr-4">
168
+ <i data-feather="message-square" class="text-secondary-500 dark:text-secondary-300"></i>
169
+ </div>
170
+ <div class="flex-1">
171
+ <p class="text-sm font-medium text-gray-900 dark:text-white">New message</p>
172
+ <p class="text-xs text-gray-500 dark:text-gray-400">Sarah Johnson sent a new message</p>
173
+ <p class="text-xs text-gray-400 mt-1">1 hour ago</p>
174
+ </div>
175
+ </div>
176
+ </div>
177
+ <div class="p-4 hover:bg-gray-50 dark:hover:bg-gray-700 transition-colors">
178
+ <div class="flex items-start">
179
+ <div class="p-2 rounded-lg bg-yellow-100 dark:bg-yellow-900/50 mr-4">
180
+ <i data-feather="alert-circle" class="text-yellow-500 dark:text-yellow-300"></i>
181
+ </div>
182
+ <div class="flex-1">
183
+ <p class="text-sm font-medium text-gray-900 dark:text-white">Server alert</p>
184
+ <p class="text-xs text-gray-500 dark:text-gray-400">Disk usage reached 85%</p>
185
+ <p class="text-xs text-gray-400 mt-1">3 hours ago</p>
186
+ </div>
187
+ </div>
188
+ </div>
189
+ </div>
190
+ <div class="px-6 py-3 bg-gray-50 dark:bg-gray-700 text-center">
191
+ <a href="#" class="text-sm font-medium text-primary-500 hover:text-primary-600 dark:hover:text-primary-400">View all activities</a>
192
+ </div>
193
+ </div>
194
+
195
+ <!-- Quick Actions -->
196
+ <div class="grid grid-cols-2 md:grid-cols-4 gap-4 mb-8">
197
+ <button class="p-4 rounded-lg bg-white dark:bg-gray-800 shadow flex flex-col items-center justify-center hover:bg-gray-50 dark:hover:bg-gray-700 transition-colors">
198
+ <div class="p-3 rounded-lg bg-primary-100 dark:bg-primary-900/50 mb-2">
199
+ <i data-feather="plus" class="text-primary-500 dark:text-primary-300"></i>
200
+ </div>
201
+ <span class="text-sm font-medium text-gray-900 dark:text-white">Add Project</span>
202
+ </button>
203
+ <button class="p-4 rounded-lg bg-white dark:bg-gray-800 shadow flex flex-col items-center justify-center hover:bg-gray-50 dark:hover:bg-gray-700 transition-colors">
204
+ <div class="p-3 rounded-lg bg-green-100 dark:bg-green-900/50 mb-2">
205
+ <i data-feather="upload" class="text-green-500 dark:text-green-300"></i>
206
+ </div>
207
+ <span class="text-sm font-medium text-gray-900 dark:text-white">Upload File</span>
208
+ </button>
209
+ <button class="p-4 rounded-lg bg-white dark:bg-gray-800 shadow flex flex-col items-center justify-center hover:bg-gray-50 dark:hover:bg-gray-700 transition-colors">
210
+ <div class="p-3 rounded-lg bg-secondary-100 dark:bg-secondary-900/50 mb-2">
211
+ <i data-feather="settings" class="text-secondary-500 dark:text-secondary-300"></i>
212
+ </div>
213
+ <span class="text-sm font-medium text-gray-900 dark:text-white">Settings</span>
214
+ </button>
215
+ <button class="p-4 rounded-lg bg-white dark:bg-gray-800 shadow flex flex-col items-center justify-center hover:bg-gray-50 dark:hover:bg-gray-700 transition-colors">
216
+ <div class="p-3 rounded-lg bg-yellow-100 dark:bg-yellow-900/50 mb-2">
217
+ <i data-feather="help-circle" class="text-yellow-500 dark:text-yellow-300"></i>
218
+ </div>
219
+ <span class="text-sm font-medium text-gray-900 dark:text-white">Help</span>
220
+ </button>
221
+ </div>
222
+ </div>
223
+ </div>
224
+ </main>
225
+
226
+ <!-- Scripts -->
227
+ <script src="components/navbar.js"></script>
228
+ <script src="components/sidebar.js"></script>
229
+ <script src="script.js"></script>
230
+ <script>
231
+ feather.replace();
232
+
233
+ // Theme toggle
234
+ document.getElementById('theme-toggle').addEventListener('click', function() {
235
+ document.documentElement.classList.toggle('dark');
236
+ localStorage.setItem('theme', document.documentElement.classList.contains('dark') ? 'dark' : 'light');
237
+ });
238
+
239
+ // Check for saved theme preference
240
+ if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) {
241
+ document.documentElement.classList.add('dark');
242
+ } else {
243
+ document.documentElement.classList.remove('dark');
244
+ }
245
+
246
+ // Charts
247
+ document.addEventListener('DOMContentLoaded', function() {
248
+ // Main Chart
249
+ const ctx = document.getElementById('mainChart').getContext('2d');
250
+ const mainChart = new Chart(ctx, {
251
+ type: 'line',
252
+ data: {
253
+ labels: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul'],
254
+ datasets: [{
255
+ label: 'Revenue',
256
+ data: [12000, 19000, 15000, 28000, 24000, 32000, 41000],
257
+ backgroundColor: 'rgba(99, 102, 241, 0.1)',
258
+ borderColor: 'rgb(99, 102, 241)',
259
+ borderWidth: 2,
260
+ tension: 0.4,
261
+ fill: true
262
+ }]
263
+ },
264
+ options: {
265
+ responsive: true,
266
+ maintainAspectRatio: false,
267
+ plugins: {
268
+ legend: {
269
+ display: false
270
+ }
271
+ },
272
+ scales: {
273
+ y: {
274
+ beginAtZero: true,
275
+ grid: {
276
+ color: 'rgba(0, 0, 0, 0.05)'
277
+ }
278
+ },
279
+ x: {
280
+ grid: {
281
+ display: false
282
+ }
283
+ }
284
+ }
285
+ }
286
+ });
287
+
288
+ // Pie Chart
289
+ const pieCtx = document.getElementById('pieChart').getContext('2d');
290
+ const pieChart = new Chart(pieCtx, {
291
+ type: 'doughnut',
292
+ data: {
293
+ labels: ['Direct', 'Referral', 'Social', 'Organic'],
294
+ datasets: [{
295
+ data: [35, 25, 20, 20],
296
+ backgroundColor: [
297
+ 'rgb(99, 102, 241)',
298
+ 'rgb(139, 92, 246)',
299
+ 'rgb(59, 130, 246)',
300
+ 'rgb(16, 185, 129)'
301
+ ],
302
+ borderWidth: 0
303
+ }]
304
+ },
305
+ options: {
306
+ responsive: true,
307
+ maintainAspectRatio: false,
308
+ plugins: {
309
+ legend: {
310
+ position: 'right',
311
+ labels: {
312
+ usePointStyle: true,
313
+ padding: 20
314
+ }
315
+ }
316
+ },
317
+ cutout: '70%'
318
+ }
319
+ });
320
+ });
321
+ </script>
322
+ <script src="https://huggingface.co/deepsite/deepsite-badge.js"></script>
323
+ </body>
324
+ </html>
script.js ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ // Shared JavaScript for dashboard
2
+ console.log('DashVista loaded');
3
+
4
+ // Initialize Vanta.js background effect
5
+ document.addEventListener('DOMContentLoaded', function() {
6
+ // Check if we're on the main dashboard page
7
+ if (document.querySelector('#mainChart')) {
8
+ VANTA.NET({
9
+ el: 'body',
10
+ mouseControls: true,
11
+ touchControls: true,
12
+ gyroControls: false,
13
+ minHeight: 200.00,
14
+ minWidth: 200.00,
15
+ scale: 1.00,
16
+ scaleMobile: 1.00,
17
+ color: 0x6366f1,
18
+ backgroundColor: 0xf9fafb,
19
+ points: 12.00,
20
+ maxDistance: 22.00,
21
+ spacing: 18.00
22
+ });
23
+
24
+ // Update Vanta on theme change
25
+ document.getElementById('theme-toggle').addEventListener('click', function() {
26
+ setTimeout(() => {
27
+ const isDark = document.documentElement.classList.contains('dark');
28
+ VANTA.NET({
29
+ el: 'body',
30
+ mouseControls: true,
31
+ touchControls: true,
32
+ gyroControls: false,
33
+ minHeight: 200.00,
34
+ minWidth: 200.00,
35
+ scale: 1.00,
36
+ scaleMobile: 1.00,
37
+ color: isDark ? 0x8b5cf6 : 0x6366f1,
38
+ backgroundColor: isDark ? 0x111827 : 0xf9fafb,
39
+ points: 12.00,
40
+ maxDistance: 22.00,
41
+ spacing: 18.00
42
+ });
43
+ }, 300);
44
+ });
45
+ }
46
+
47
+ // Make all cards hoverable
48
+ document.querySelectorAll('.hover\\:bg-gray-50').forEach(card => {
49
+ card.addEventListener('mouseenter', () => {
50
+ card.classList.add('shadow-md');
51
+ card.classList.remove('shadow');
52
+ });
53
+ card.addEventListener('mouseleave', () => {
54
+ card.classList.remove('shadow-md');
55
+ card.classList.add('shadow');
56
+ });
57
+ });
58
+ });
style.css CHANGED
@@ -1,28 +1,52 @@
 
 
 
1
  body {
2
- padding: 2rem;
3
- font-family: -apple-system, BlinkMacSystemFont, "Arial", sans-serif;
 
 
 
 
 
 
 
 
 
 
4
  }
5
 
6
- h1 {
7
- font-size: 16px;
8
- margin-top: 0;
9
  }
10
 
11
- p {
12
- color: rgb(107, 114, 128);
13
- font-size: 15px;
14
- margin-bottom: 10px;
15
- margin-top: 5px;
16
  }
17
 
18
- .card {
19
- max-width: 620px;
20
- margin: 0 auto;
21
- padding: 16px;
22
- border: 1px solid lightgray;
23
- border-radius: 16px;
24
  }
25
 
26
- .card p:last-child {
27
- margin-bottom: 0;
28
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* Custom styles for dashboard */
2
+ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
3
+
4
  body {
5
+ font-family: 'Inter', sans-serif;
6
+ transition: background-color 0.3s ease;
7
+ }
8
+
9
+ /* Custom scrollbar */
10
+ ::-webkit-scrollbar {
11
+ width: 6px;
12
+ height: 6px;
13
+ }
14
+
15
+ ::-webkit-scrollbar-track {
16
+ background: #f1f1f1;
17
  }
18
 
19
+ ::-webkit-scrollbar-thumb {
20
+ background: #888;
21
+ border-radius: 3px;
22
  }
23
 
24
+ ::-webkit-scrollbar-thumb:hover {
25
+ background: #555;
 
 
 
26
  }
27
 
28
+ .dark ::-webkit-scrollbar-track {
29
+ background: #1f2937;
 
 
 
 
30
  }
31
 
32
+ .dark ::-webkit-scrollbar-thumb {
33
+ background: #4b5563;
34
  }
35
+
36
+ .dark ::-webkit-scrollbar-thumb:hover {
37
+ background: #6b7280;
38
+ }
39
+
40
+ /* Chart tooltip customization */
41
+ .chartjs-tooltip {
42
+ background-color: rgba(0, 0, 0, 0.8) !important;
43
+ border-radius: 0.375rem !important;
44
+ padding: 0.5rem 0.75rem !important;
45
+ color: white !important;
46
+ font-family: 'Inter', sans-serif !important;
47
+ }
48
+
49
+ .dark .chartjs-tooltip {
50
+ background-color: rgba(255, 255, 255, 0.9) !important;
51
+ color: #111827 !important;
52
+ }