chen829 commited on
Commit
ddfff11
·
verified ·
1 Parent(s): ccc907c

Add 3 files

Browse files
Files changed (3) hide show
  1. README.md +7 -5
  2. index.html +576 -19
  3. prompts.txt +1 -0
README.md CHANGED
@@ -1,10 +1,12 @@
1
  ---
2
- title: Educational Software
3
- emoji: 🐢
4
- colorFrom: indigo
5
- colorTo: purple
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: educational-software
3
+ emoji: 🐳
4
+ colorFrom: purple
5
+ colorTo: yellow
6
  sdk: static
7
  pinned: false
8
+ tags:
9
+ - deepsite
10
  ---
11
 
12
+ Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
index.html CHANGED
@@ -1,19 +1,576 @@
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="zh-CN">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
6
+ <title>EduPlay - 移动学习平台</title>
7
+ <script src="https://cdn.tailwindcss.com"></script>
8
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
9
+ <style>
10
+ @keyframes fadeIn {
11
+ from { opacity: 0; }
12
+ to { opacity: 1; }
13
+ }
14
+ @keyframes slideUp {
15
+ from { transform: translateY(20px); }
16
+ to { transform: translateY(0); }
17
+ }
18
+ .no-scrollbar::-webkit-scrollbar { display: none; }
19
+ .feedback-modal { transition: opacity 0.3s ease; }
20
+ .feedback-content { transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1); }
21
+ .subject-card:hover {
22
+ transform: translateY(-3px);
23
+ box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
24
+ }
25
+ .nav-btn.active {
26
+ position: relative;
27
+ }
28
+ .nav-btn.active::after {
29
+ content: '';
30
+ position: absolute;
31
+ bottom: -4px;
32
+ left: 50%;
33
+ transform: translateX(-50%);
34
+ width: 6px;
35
+ height: 6px;
36
+ border-radius: 50%;
37
+ background-color: #4f46e5;
38
+ }
39
+ .progress-ring {
40
+ transform: rotate(-90deg);
41
+ }
42
+ .progress-ring-circle {
43
+ stroke-dasharray: 100;
44
+ stroke-dashoffset: 100;
45
+ transition: stroke-dashoffset 0.5s ease;
46
+ }
47
+ </style>
48
+ </head>
49
+ <body class="bg-gray-50 font-sans pb-20">
50
+ <!-- 顶部导航栏 -->
51
+ <header class="bg-white shadow-sm sticky top-0 z-30">
52
+ <div class="max-w-md mx-auto px-4 py-3 flex justify-between items-center">
53
+ <div class="flex items-center">
54
+ <i class="fas fa-graduation-cap text-xl text-indigo-600 mr-2 animate-bounce"></i>
55
+ <h1 class="text-lg font-bold text-gray-800">EduPlay</h1>
56
+ </div>
57
+ <div class="flex items-center space-x-3">
58
+ <button aria-label="通知" class="w-8 h-8 rounded-full bg-gray-100 flex items-center justify-center relative">
59
+ <i class="fas fa-bell text-gray-600"></i>
60
+ <span class="absolute -top-1 -right-1 bg-red-500 text-white text-xs rounded-full w-4 h-4 flex items-center justify-center">3</span>
61
+ </button>
62
+ <button id="user-menu-btn" aria-label="用户菜单" class="w-8 h-8 rounded-full bg-indigo-100 flex items-center justify-center">
63
+ <i class="fas fa-user text-indigo-600"></i>
64
+ </button>
65
+ </div>
66
+ </div>
67
+ </header>
68
+
69
+ <!-- 端口选择 -->
70
+ <div class="bg-white shadow-sm sticky top-12 z-20">
71
+ <div class="flex overflow-x-auto no-scrollbar px-2">
72
+ <button class="port-selector relative text-sm flex items-center justify-center flex-1 px-2 py-2 rounded-md transition-colors duration-200"
73
+ data-port="student" aria-label="学生端">
74
+ <i class="fas fa-user-graduate mr-1"></i> 学生端
75
+ <span class="role-badge hidden absolute -top-1 -right-1 bg-indigo-600 text-white text-xs rounded-full w-4 h-4 flex items-center justify-center">✓</span>
76
+ </button>
77
+ <button class="port-selector relative text-sm flex items-center justify-center flex-1 px-2 py-2 rounded-md transition-colors duration-200"
78
+ data-port="teacher" aria-label="教师端">
79
+ <i class="fas fa-chalkboard-teacher mr-1"></i> 教师端
80
+ <span class="role-badge hidden absolute -top-1 -right-1 bg-blue-600 text-white text-xs rounded-full w-4 h-4 flex items-center justify-center">✓</span>
81
+ </button>
82
+ <button class="port-selector relative text-sm flex items-center justify-center flex-1 px-2 py-2 rounded-md transition-colors duration-200"
83
+ data-port="parent" aria-label="家长端">
84
+ <i class="fas fa-users mr-1"></i> 家长端
85
+ <span class="role-badge hidden absolute -top-1 -right-1 bg-green-600 text-white text-xs rounded-full w-4 h-4 flex items-center justify-center">✓</span>
86
+ </button>
87
+ </div>
88
+ </div>
89
+
90
+ <!-- 页面内容容器 -->
91
+ <main class="max-w-md mx-auto px-4 py-4 space-y-6">
92
+ <!-- 学生端 -->
93
+ <section id="student-port" class="port-content">
94
+ <div class="text-center mb-6 animate-fadeIn">
95
+ <h1 class="text-2xl font-bold text-indigo-800">学生学习中心</h1>
96
+ <p class="text-gray-600">快乐学习,健康成长</p>
97
+ </div>
98
+
99
+ <!-- 学习进度 -->
100
+ <div class="bg-white rounded-xl shadow p-4 mb-4 animate-slideUp">
101
+ <div class="flex items-center justify-between mb-3">
102
+ <h2 class="font-bold text-lg flex items-center">
103
+ <i class="fas fa-chart-line text-indigo-500 mr-2"></i> 学习进度
104
+ </h2>
105
+ <span class="text-xs text-indigo-600">本周</span>
106
+ </div>
107
+ <div class="flex items-center">
108
+ <div class="relative w-16 h-16 mr-4">
109
+ <svg class="progress-ring w-16 h-16" viewBox="0 0 36 36">
110
+ <circle class="progress-ring-circle" stroke="#e0e7ff" stroke-width="3" fill="none" r="16" cx="18" cy="18"></circle>
111
+ <circle class="progress-ring-circle" stroke="#4f46e5" stroke-width="3" stroke-linecap="round" fill="none" r="16" cx="18" cy="18"></circle>
112
+ </svg>
113
+ <div class="absolute inset-0 flex items-center justify-center">
114
+ <span class="text-sm font-bold">68%</span>
115
+ </div>
116
+ </div>
117
+ <div class="flex-1">
118
+ <div class="flex justify-between text-xs mb-1">
119
+ <span>语文</span>
120
+ <span>75%</span>
121
+ </div>
122
+ <div class="w-full bg-gray-200 rounded-full h-1.5 mb-2">
123
+ <div class="bg-indigo-600 h-1.5 rounded-full" style="width: 75%"></div>
124
+ </div>
125
+ <div class="flex justify-between text-xs mb-1">
126
+ <span>数学</span>
127
+ <span>62%</span>
128
+ </div>
129
+ <div class="w-full bg-gray-200 rounded-full h-1.5">
130
+ <div class="bg-blue-600 h-1.5 rounded-full" style="width: 62%"></div>
131
+ </div>
132
+ </div>
133
+ </div>
134
+ </div>
135
+
136
+ <!-- 学科卡片 -->
137
+ <div class="grid grid-cols-2 gap-3 mb-4">
138
+ <div class="subject-card bg-white rounded-xl shadow p-4 flex flex-col items-center active:scale-95 transition-all duration-200 cursor-pointer" data-subject="chinese">
139
+ <div class="w-12 h-12 rounded-full bg-indigo-100 flex items-center justify-center mb-2">
140
+ <i class="fas fa-book-open text-indigo-600 text-xl"></i>
141
+ </div>
142
+ <h3 class="font-semibold">语文</h3>
143
+ <p class="text-xs text-gray-500 mt-1">12个新内容</p>
144
+ <div class="w-full mt-2 bg-gray-200 rounded-full h-1">
145
+ <div class="bg-indigo-600 h-1 rounded-full" style="width: 75%"></div>
146
+ </div>
147
+ </div>
148
+ <div class="subject-card bg-white rounded-xl shadow p-4 flex flex-col items-center active:scale-95 transition-all duration-200 cursor-pointer" data-subject="math">
149
+ <div class="w-12 h-12 rounded-full bg-blue-100 flex items-center justify-center mb-2">
150
+ <i class="fas fa-calculator text-blue-600 text-xl"></i>
151
+ </div>
152
+ <h3 class="font-semibold">数学</h3>
153
+ <p class="text-xs text-gray-500 mt-1">8个新练习</p>
154
+ <div class="w-full mt-2 bg-gray-200 rounded-full h-1">
155
+ <div class="bg-blue-600 h-1 rounded-full" style="width: 62%"></div>
156
+ </div>
157
+ </div>
158
+ <div class="subject-card bg-white rounded-xl shadow p-4 flex flex-col items-center active:scale-95 transition-all duration-200 cursor-pointer" data-subject="english">
159
+ <div class="w-12 h-12 rounded-full bg-green-100 flex items-center justify-center mb-2">
160
+ <i class="fas fa-language text-green-600 text-xl"></i>
161
+ </div>
162
+ <h3 class="font-semibold">英语</h3>
163
+ <p class="text-xs text-gray-500 mt-1">20个新单词</p>
164
+ <div class="w-full mt-2 bg-gray-200 rounded-full h-1">
165
+ <div class="bg-green-600 h-1 rounded-full" style="width: 45%"></div>
166
+ </div>
167
+ </div>
168
+ <div class="subject-card bg-white rounded-xl shadow p-4 flex flex-col items-center active:scale-95 transition-all duration-200 cursor-pointer" data-subject="science">
169
+ <div class="w-12 h-12 rounded-full bg-yellow-100 flex items-center justify-center mb-2">
170
+ <i class="fas fa-flask text-yellow-600 text-xl"></i>
171
+ </div>
172
+ <h3 class="font-semibold">科学</h3>
173
+ <p class="text-xs text-gray-500 mt-1">3个新实验</p>
174
+ <div class="w-full mt-2 bg-gray-200 rounded-full h-1">
175
+ <div class="bg-yellow-600 h-1 rounded-full" style="width: 30%"></div>
176
+ </div>
177
+ </div>
178
+ </div>
179
+
180
+ <!-- 今日任务 -->
181
+ <div class="bg-white rounded-xl shadow p-4">
182
+ <h2 class="text-lg font-bold flex items-center mb-3">
183
+ <i class="fas fa-tasks text-indigo-500 mr-2"></i> 今日任务
184
+ </h2>
185
+ <ul class="space-y-3">
186
+ <li class="flex justify-between items-center p-2 rounded-lg hover:bg-gray-50 transition-colors duration-150">
187
+ <div class="flex items-center">
188
+ <div class="w-8 h-8 rounded-full bg-indigo-100 flex items-center justify-center mr-3">
189
+ <i class="fas fa-book text-indigo-600 text-sm"></i>
190
+ </div>
191
+ <div>
192
+ <p class="text-sm font-medium">语文阅读练习</p>
193
+ <p class="text-xs text-gray-500">《春》阅读理解</p>
194
+ </div>
195
+ </div>
196
+ <span class="px-2 py-1 text-xs rounded-full bg-indigo-100 text-indigo-800">进行中</span>
197
+ </li>
198
+ <li class="flex justify-between items-center p-2 rounded-lg hover:bg-gray-50 transition-colors duration-150">
199
+ <div class="flex items-center">
200
+ <div class="w-8 h-8 rounded-full bg-blue-100 flex items-center justify-center mr-3">
201
+ <i class="fas fa-calculator text-blue-600 text-sm"></i>
202
+ </div>
203
+ <div>
204
+ <p class="text-sm font-medium">数学作业</p>
205
+ <p class="text-xs text-gray-500">二次函数练习题</p>
206
+ </div>
207
+ </div>
208
+ <span class="px-2 py-1 text-xs rounded-full bg-blue-100 text-blue-800">未开始</span>
209
+ </li>
210
+ <li class="flex justify-between items-center p-2 rounded-lg hover:bg-gray-50 transition-colors duration-150">
211
+ <div class="flex items-center">
212
+ <div class="w-8 h-8 rounded-full bg-green-100 flex items-center justify-center mr-3">
213
+ <i class="fas fa-language text-green-600 text-sm"></i>
214
+ </div>
215
+ <div>
216
+ <p class="text-sm font-medium">英语单词背诵</p>
217
+ <p class="text-xs text-gray-500">Unit 3 单词</p>
218
+ </div>
219
+ </div>
220
+ <span class="px-2 py-1 text-xs rounded-full bg-green-100 text-green-800">已完成</span>
221
+ </li>
222
+ </ul>
223
+ </div>
224
+ </section>
225
+
226
+ <!-- 教师端 -->
227
+ <section id="teacher-port" class="port-content hidden">
228
+ <h1 class="text-2xl font-bold text-blue-800 text-center animate-fadeIn">教师管理中心</h1>
229
+ <p class="text-gray-600 text-center mb-6">班级管理 · 教学分析 · 作业布置</p>
230
+
231
+ <!-- 快速操作 -->
232
+ <div class="grid grid-cols-2 gap-3 mb-4">
233
+ <div class="bg-white rounded-xl shadow p-4 flex flex-col items-center active:scale-95 transition-all duration-200 cursor-pointer hover:shadow-md">
234
+ <div class="w-12 h-12 rounded-full bg-blue-100 flex items-center justify-center mb-2">
235
+ <i class="fas fa-users text-blue-600 text-xl"></i>
236
+ </div>
237
+ <h3 class="text-sm font-semibold">班级管理</h3>
238
+ <p class="text-xs text-gray-500 mt-1">3个班级</p>
239
+ </div>
240
+ <div class="bg-white rounded-xl shadow p-4 flex flex-col items-center active:scale-95 transition-all duration-200 cursor-pointer hover:shadow-md">
241
+ <div class="w-12 h-12 rounded-full bg-blue-100 flex items-center justify-center mb-2">
242
+ <i class="fas fa-tasks text-blue-600 text-xl"></i>
243
+ </div>
244
+ <h3 class="text-sm font-semibold">布置作业</h3>
245
+ <p class="text-xs text-gray-500 mt-1">5份待批改</p>
246
+ </div>
247
+ <div class="bg-white rounded-xl shadow p-4 flex flex-col items-center active:scale-95 transition-all duration-200 cursor-pointer hover:shadow-md">
248
+ <div class="w-12 h-12 rounded-full bg-blue-100 flex items-center justify-center mb-2">
249
+ <i class="fas fa-chart-bar text-blue-600 text-xl"></i>
250
+ </div>
251
+ <h3 class="text-sm font-semibold">教学分析</h3>
252
+ <p class="text-xs text-gray-500 mt-1">查看报告</p>
253
+ </div>
254
+ <div class="bg-white rounded-xl shadow p-4 flex flex-col items-center active:scale-95 transition-all duration-200 cursor-pointer hover:shadow-md">
255
+ <div class="w-12 h-12 rounded-full bg-blue-100 flex items-center justify-center mb-2">
256
+ <i class="fas fa-calendar-alt text-blue-600 text-xl"></i>
257
+ </div>
258
+ <h3 class="text-sm font-semibold">课程计划</h3>
259
+ <p class="text-xs text-gray-500 mt-1">下周课程</p>
260
+ </div>
261
+ </div>
262
+
263
+ <!-- 待办事项 -->
264
+ <div class="bg-white rounded-xl shadow p-4">
265
+ <h2 class="text-lg font-bold flex items-center mb-3">
266
+ <i class="fas fa-clipboard-list text-blue-500 mr-2"></i> 待办事项
267
+ </h2>
268
+ <ul class="space-y-3">
269
+ <li class="flex justify-between items-center p-2 rounded-lg hover:bg-gray-50 transition-colors duration-150">
270
+ <div class="flex items-center">
271
+ <div class="w-8 h-8 rounded-full bg-blue-100 flex items-center justify-center mr-3">
272
+ <i class="fas fa-check-circle text-blue-600 text-sm"></i>
273
+ </div>
274
+ <div>
275
+ <p class="text-sm font-medium">批改作业</p>
276
+ <p class="text-xs text-gray-500">语文作文</p>
277
+ </div>
278
+ </div>
279
+ <span class="text-xs text-gray-500">今天截止</span>
280
+ </li>
281
+ <li class="flex justify-between items-center p-2 rounded-lg hover:bg-gray-50 transition-colors duration-150">
282
+ <div class="flex items-center">
283
+ <div class="w-8 h-8 rounded-full bg-blue-100 flex items-center justify-center mr-3">
284
+ <i class="fas fa-chalkboard-teacher text-blue-600 text-sm"></i>
285
+ </div>
286
+ <div>
287
+ <p class="text-sm font-medium">备课</p>
288
+ <p class="text-xs text-gray-500">数学第3章</p>
289
+ </div>
290
+ </div>
291
+ <span class="text-xs text-gray-500">明天</span>
292
+ </li>
293
+ </ul>
294
+ </div>
295
+ </section>
296
+
297
+ <!-- 家长端 -->
298
+ <section id="parent-port" class="port-content hidden">
299
+ <h1 class="text-2xl font-bold text-green-800 text-center animate-fadeIn">家长监护中心</h1>
300
+ <p class="text-gray-600 text-center mb-6">关注成长 · 学习陪伴 · 家校沟通</p>
301
+
302
+ <!-- 孩子信息 -->
303
+ <div class="bg-white rounded-xl shadow p-4 mb-4">
304
+ <div class="flex items-center mb-3">
305
+ <div class="w-12 h-12 rounded-full bg-green-100 flex items-center justify-center mr-3">
306
+ <i class="fas fa-child text-green-600 text-xl"></i>
307
+ </div>
308
+ <div>
309
+ <h2 class="font-bold">小明</h2>
310
+ <p class="text-xs text-gray-500">三年级二班</p>
311
+ </div>
312
+ </div>
313
+ <div class="flex justify-between text-center">
314
+ <div>
315
+ <p class="text-sm text-gray-600">今日学习</p>
316
+ <p class="font-bold">1.5小时</p>
317
+ </div>
318
+ <div>
319
+ <p class="text-sm text-gray-600">本周学习</p>
320
+ <p class="font-bold">6小时15分钟</p>
321
+ </div>
322
+ <div>
323
+ <p class="text-sm text-gray-600">作业完成</p>
324
+ <p class="font-bold">80%</p>
325
+ </div>
326
+ </div>
327
+ </div>
328
+
329
+ <!-- 学习报告 -->
330
+ <div class="bg-white rounded-xl shadow p-4 mb-4">
331
+ <h2 class="font-bold text-lg mb-3 flex items-center">
332
+ <i class="fas fa-chart-pie text-green-500 mr-2"></i> 学习报告
333
+ </h2>
334
+ <div class="flex items-center justify-between mb-2">
335
+ <span class="text-sm">语文</span>
336
+ <span class="text-sm font-medium">75%</span>
337
+ </div>
338
+ <div class="w-full bg-gray-200 rounded-full h-2 mb-3">
339
+ <div class="bg-green-600 h-2 rounded-full" style="width: 75%"></div>
340
+ </div>
341
+ <div class="flex items-center justify-between mb-2">
342
+ <span class="text-sm">数学</span>
343
+ <span class="text-sm font-medium">62%</span>
344
+ </div>
345
+ <div class="w-full bg-gray-200 rounded-full h-2 mb-3">
346
+ <div class="bg-green-600 h-2 rounded-full" style="width: 62%"></div>
347
+ </div>
348
+ <div class="flex items-center justify-between mb-2">
349
+ <span class="text-sm">英语</span>
350
+ <span class="text-sm font-medium">45%</span>
351
+ </div>
352
+ <div class="w-full bg-gray-200 rounded-full h-2">
353
+ <div class="bg-green-600 h-2 rounded-full" style="width: 45%"></div>
354
+ </div>
355
+ </div>
356
+
357
+ <!-- 家校沟通 -->
358
+ <div class="bg-white rounded-xl shadow p-4">
359
+ <h2 class="font-bold text-lg mb-3 flex items-center">
360
+ <i class="fas fa-comments text-green-500 mr-2"></i> 家校沟通
361
+ </h2>
362
+ <div class="space-y-3">
363
+ <div class="flex items-start p-2 rounded-lg bg-green-50">
364
+ <div class="w-8 h-8 rounded-full bg-green-100 flex items-center justify-center mr-3 flex-shrink-0">
365
+ <i class="fas fa-user-tie text-green-600 text-sm"></i>
366
+ </div>
367
+ <div>
368
+ <p class="text-sm font-medium">李老师</p>
369
+ <p class="text-xs text-gray-700">小明最近在数学课上表现积极,继续保持!</p>
370
+ <p class="text-xs text-gray-500 mt-1">今天 10:30</p>
371
+ </div>
372
+ </div>
373
+ <div class="flex items-start p-2 rounded-lg bg-gray-50">
374
+ <div class="w-8 h-8 rounded-full bg-gray-200 flex items-center justify-center mr-3 flex-shrink-0">
375
+ <i class="fas fa-user text-gray-600 text-sm"></i>
376
+ </div>
377
+ <div>
378
+ <p class="text-sm font-medium">您</p>
379
+ <p class="text-xs text-gray-700">谢谢老师,我们会继续督促他学习。</p>
380
+ <p class="text-xs text-gray-500 mt-1">昨天 18:15</p>
381
+ </div>
382
+ </div>
383
+ </div>
384
+ <button class="w-full mt-3 bg-green-600 text-white py-2 rounded-lg text-sm flex items-center justify-center">
385
+ <i class="fas fa-plus mr-1"></i> 发送消息
386
+ </button>
387
+ </div>
388
+ </section>
389
+ </main>
390
+
391
+ <!-- 底部导航 -->
392
+ <nav class="bottom-nav fixed bottom-0 left-0 right-0 bg-white shadow-lg border-t border-gray-100">
393
+ <div class="flex justify-around py-2">
394
+ <button class="nav-btn text-indigo-600 flex flex-col items-center text-xs active" data-tab="home" aria-label="首页">
395
+ <i class="fas fa-home text-lg mb-1"></i><span>首页</span>
396
+ </button>
397
+ <button class="nav-btn text-gray-500 flex flex-col items-center text-xs" data-tab="courses" aria-label="课程">
398
+ <i class="fas fa-book text-lg mb-1"></i><span>课程</span>
399
+ </button>
400
+ <button class="nav-btn text-gray-500 flex flex-col items-center text-xs" data-tab="stats" aria-label="数据">
401
+ <i class="fas fa-chart-line text-lg mb-1"></i><span>数据</span>
402
+ </button>
403
+ <button class="nav-btn text-gray-500 flex flex-col items-center text-xs" data-tab="profile" aria-label="我的">
404
+ <i class="fas fa-user text-lg mb-1"></i><span>我的</span>
405
+ </button>
406
+ </div>
407
+ </nav>
408
+
409
+ <!-- 反馈按钮 -->
410
+ <button id="feedback-btn" aria-label="反馈" class="fixed bottom-20 right-4 w-12 h-12 bg-indigo-600 rounded-full shadow-lg text-white flex items-center justify-center hover:bg-indigo-700 transition-colors duration-200">
411
+ <i class="fas fa-comment-dots text-xl"></i>
412
+ </button>
413
+
414
+ <!-- 反馈模态框 -->
415
+ <div id="feedback-modal" class="feedback-modal fixed inset-0 bg-black bg-opacity-50 hidden flex justify-center items-center z-50">
416
+ <div class="feedback-content bg-white w-11/12 max-w-sm rounded-xl p-6 transform scale-95 opacity-0">
417
+ <h3 class="text-lg font-bold mb-4 text-center">意见反馈</h3>
418
+ <form id="feedback-form" class="space-y-4">
419
+ <div>
420
+ <label for="feedback-type" class="block text-sm font-medium text-gray-700 mb-1">反馈类型</label>
421
+ <select id="feedback-type" class="w-full border border-gray-300 rounded-lg px-3 py-2 focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500">
422
+ <option value="suggestion">建议</option>
423
+ <option value="bug">错误报告</option>
424
+ <option value="question">问题咨询</option>
425
+ </select>
426
+ </div>
427
+ <div>
428
+ <label for="feedback-content" class="block text-sm font-medium text-gray-700 mb-1">反馈内容</label>
429
+ <textarea id="feedback-content" rows="4" class="w-full border border-gray-300 rounded-lg px-3 py-2 focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500" placeholder="请详细描述您的反馈..."></textarea>
430
+ </div>
431
+ <div>
432
+ <label class="block text-sm font-medium text-gray-700 mb-2">满意度评分</label>
433
+ <div class="flex justify-center space-x-1">
434
+ <button type="button" class="rating-star text-2xl hover:text-yellow-400 transition-colors duration-150" data-rating="1">☆</button>
435
+ <button type="button" class="rating-star text-2xl hover:text-yellow-400 transition-colors duration-150" data-rating="2">☆</button>
436
+ <button type="button" class="rating-star text-2xl hover:text-yellow-400 transition-colors duration-150" data-rating="3">☆</button>
437
+ <button type="button" class="rating-star text-2xl hover:text-yellow-400 transition-colors duration-150" data-rating="4">☆</button>
438
+ <button type="button" class="rating-star text-2xl hover:text-yellow-400 transition-colors duration-150" data-rating="5">☆</button>
439
+ </div>
440
+ </div>
441
+ <input type="hidden" id="feedback-rating" value="0">
442
+ <button type="submit" id="submit-feedback" class="w-full bg-indigo-600 text-white py-2 rounded-lg hover:bg-indigo-700 transition-colors duration-200 flex items-center justify-center">
443
+ <i class="fas fa-paper-plane mr-2"></i> 提交反馈
444
+ </button>
445
+ </form>
446
+ </div>
447
+ </div>
448
+
449
+ <!-- 成功提示 -->
450
+ <div id="feedback-success" class="fixed top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 bg-white p-6 rounded-xl shadow-xl hidden z-50 text-center animate-fadeIn">
451
+ <div class="w-16 h-16 rounded-full bg-green-100 flex items-center justify-center mx-auto mb-3">
452
+ <i class="fas fa-check-circle text-green-500 text-3xl"></i>
453
+ </div>
454
+ <p class="font-bold text-lg mb-1">反馈成功!</p>
455
+ <p class="text-sm text-gray-600">感谢您的宝贵意见</p>
456
+ </div>
457
+
458
+ <script>
459
+ document.addEventListener('DOMContentLoaded', () => {
460
+ // 初始化圆形进度条
461
+ const progressCircle = document.querySelector('.progress-ring-circle');
462
+ if (progressCircle) {
463
+ const radius = progressCircle.r.baseVal.value;
464
+ const circumference = 2 * Math.PI * radius;
465
+ progressCircle.style.strokeDasharray = circumference;
466
+ progressCircle.style.strokeDashoffset = circumference - (68 / 100) * circumference;
467
+ }
468
+
469
+ // 端口切换功能
470
+ const portSelectors = document.querySelectorAll('.port-selector');
471
+ const portContents = document.querySelectorAll('.port-content');
472
+
473
+ function switchPort(port) {
474
+ portSelectors.forEach(btn => {
475
+ const badge = btn.querySelector('.role-badge');
476
+ badge.classList.add('hidden');
477
+ btn.classList.remove('bg-indigo-600','bg-blue-600','bg-green-600','text-white');
478
+ if(btn.dataset.port === port) {
479
+ badge.classList.remove('hidden');
480
+ btn.classList.add(port === 'student' ? 'bg-indigo-600 text-white' :
481
+ port === 'teacher' ? 'bg-blue-600 text-white' :
482
+ 'bg-green-600 text-white');
483
+ }
484
+ });
485
+ portContents.forEach(c => c.classList.add('hidden'));
486
+ const activePort = document.getElementById(`${port}-port`);
487
+ activePort.classList.remove('hidden');
488
+ activePort.classList.add('animate-fadeIn');
489
+ }
490
+
491
+ portSelectors.forEach(btn => btn.addEventListener('click', () => switchPort(btn.dataset.port)));
492
+ switchPort('student');
493
+
494
+ // 底部导航切换
495
+ const navBtns = document.querySelectorAll('.nav-btn');
496
+ navBtns.forEach(btn => btn.addEventListener('click', () => {
497
+ navBtns.forEach(b => {
498
+ b.classList.replace('text-indigo-600','text-gray-500');
499
+ b.classList.remove('active');
500
+ });
501
+ btn.classList.replace('text-gray-500','text-indigo-600');
502
+ btn.classList.add('active');
503
+ }));
504
+
505
+ // 学科卡片点击效果
506
+ const subjectCards = document.querySelectorAll('.subject-card');
507
+ subjectCards.forEach(card => {
508
+ card.addEventListener('click', function() {
509
+ const subject = this.dataset.subject;
510
+ alert(`打开${subject}学科页面`);
511
+ });
512
+ });
513
+
514
+ // 反馈功能
515
+ const feedbackBtn = document.getElementById('feedback-btn');
516
+ const feedbackModal = document.getElementById('feedback-modal');
517
+ const feedbackContent = feedbackModal.querySelector('.feedback-content');
518
+ const feedbackForm = document.getElementById('feedback-form');
519
+ const ratingStars = document.querySelectorAll('.rating-star');
520
+ const feedbackRating = document.getElementById('feedback-rating');
521
+ const successBox = document.getElementById('feedback-success');
522
+
523
+ feedbackBtn.onclick = () => {
524
+ feedbackModal.classList.remove('hidden');
525
+ setTimeout(() => {
526
+ feedbackContent.classList.remove('scale-95','opacity-0');
527
+ feedbackContent.classList.add('scale-100','opacity-100');
528
+ },10);
529
+ };
530
+
531
+ feedbackModal.onclick = e => {
532
+ if(e.target === feedbackModal) {
533
+ feedbackContent.classList.remove('scale-100','opacity-100');
534
+ feedbackContent.classList.add('scale-95','opacity-0');
535
+ setTimeout(() => feedbackModal.classList.add('hidden'), 300);
536
+ }
537
+ };
538
+
539
+ ratingStars.forEach(star => {
540
+ star.onclick = () => {
541
+ const rating = +star.dataset.rating;
542
+ feedbackRating.value = rating;
543
+ ratingStars.forEach((s,i) => {
544
+ s.textContent = i < rating ? '★':'☆';
545
+ s.classList.toggle('text-yellow-400', i < rating);
546
+ });
547
+ };
548
+ });
549
+
550
+ feedbackForm.onsubmit = e => {
551
+ e.preventDefault();
552
+ const submitBtn = document.getElementById('submit-feedback');
553
+ submitBtn.innerHTML = '<i class="fas fa-spinner fa-spin mr-2"></i> 提交中...';
554
+
555
+ setTimeout(() => {
556
+ submitBtn.innerHTML = '<i class="fas fa-paper-plane mr-2"></i> 提交反馈';
557
+ feedbackContent.classList.remove('scale-100','opacity-100');
558
+ feedbackContent.classList.add('scale-95','opacity-0');
559
+
560
+ setTimeout(() => {
561
+ feedbackModal.classList.add('hidden');
562
+ successBox.classList.remove('hidden');
563
+ setTimeout(()=> successBox.classList.add('hidden'),2000);
564
+ feedbackForm.reset();
565
+ feedbackRating.value = 0;
566
+ ratingStars.forEach(s => {
567
+ s.textContent = '☆';
568
+ s.classList.remove('text-yellow-400');
569
+ });
570
+ }, 300);
571
+ }, 1500);
572
+ };
573
+ });
574
+ </script>
575
+ <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=chen829/educational-software" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
576
+ </html>
prompts.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"> <title>EduPlay - 移动学习平台</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> .no-scrollbar::-webkit-scrollbar { display: none; } .feedback-modal { transition: opacity 0.3s ease; } .feedback-content { transition: transform 0.3s ease; } </style> </head> <body class="bg-gray-50 font-sans pb-20"> <!-- 顶部导航栏 --> <header class="bg-white shadow-sm sticky top-0 z-30"> <div class="max-w-md mx-auto px-4 py-3 flex justify-between items-center"> <div class="flex items-center"> <i class="fas fa-graduation-cap text-xl text-indigo-600 mr-2"></i> <h1 class="text-lg font-bold text-gray-800">EduPlay</h1> </div> <button id="user-menu-btn" aria-label="用户菜单" class="w-8 h-8 rounded-full bg-gray-200 flex items-center justify-center"> <i class="fas fa-user text-gray-600"></i> </button> </div> </header> <!-- 端口选择 --> <div class="bg-white shadow-sm sticky top-12 z-20"> <div class="flex overflow-x-auto no-scrollbar px-2"> <button class="port-selector relative text-sm flex items-center justify-center flex-1 px-2 py-2 rounded-md" data-port="student" aria-label="学生端"> <i class="fas fa-user-graduate mr-1"></i> 学生端 <span class="role-badge hidden absolute -top-1 -right-1 bg-indigo-600 text-white text-xs rounded-full w-4 h-4 flex items-center justify-center">✓</span> </button> <button class="port-selector relative text-sm flex items-center justify-center flex-1 px-2 py-2 rounded-md" data-port="teacher" aria-label="教师端"> <i class="fas fa-chalkboard-teacher mr-1"></i> 教师端 <span class="role-badge hidden absolute -top-1 -right-1 bg-blue-600 text-white text-xs rounded-full w-4 h-4 flex items-center justify-center">✓</span> </button> <button class="port-selector relative text-sm flex items-center justify-center flex-1 px-2 py-2 rounded-md" data-port="parent" aria-label="家长端"> <i class="fas fa-users mr-1"></i> 家长端 <span class="role-badge hidden absolute -top-1 -right-1 bg-green-600 text-white text-xs rounded-full w-4 h-4 flex items-center justify-center">✓</span> </button> </div> </div> <!-- 页面内容容器 --> <main class="max-w-md mx-auto px-4 py-4 space-y-6"> <!-- 学生端 --> <section id="student-port" class="port-content"> <div class="text-center mb-4"> <h1 class="text-2xl font-bold text-indigo-800">学生学习中心</h1> <p class="text-gray-600">快乐学习,健康成长</p> </div> <div class="grid grid-cols-2 gap-3 mb-4"> <div class="subject-card bg-white rounded-lg shadow p-4 flex flex-col items-center active:scale-95 transition" data-subject="chinese"> <div class="w-12 h-12 rounded-full bg-indigo-100 flex items-center justify-center mb-2"> <i class="fas fa-book-open text-indigo-600 text-xl"></i> </div> <h3 class="font-semibold">语文</h3> <p class="text-xs text-gray-500">12个新内容</p> </div> <div class="subject-card bg-white rounded-lg shadow p-4 flex flex-col items-center active:scale-95 transition" data-subject="math"> <div class="w-12 h-12 rounded-full bg-blue-100 flex items-center justify-center mb-2"> <i class="fas fa-calculator text-blue-600 text-xl"></i> </div> <h3 class="font-semibold">数学</h3> <p class="text-xs text-gray-500">8个新练习</p> </div> </div> <div class="bg-white rounded-lg shadow p-4"> <h2 class="text-lg font-bold flex items-center mb-3"> <i class="fas fa-tasks text-indigo-500 mr-2"></i> 今日任务 </h2> <ul class="space-y-2 text-sm"> <li class="flex justify-between items-center border-b pb-2"> <span>语文阅读练习</span> <span class="px-2 py-1 text-xs rounded-full bg-indigo-100 text-indigo-800">进行中</span> </li> <li class="flex justify-between items-center border-b pb-2"> <span>数学作业</span> <span class="px-2 py-1 text-xs rounded-full bg-blue-100 text-blue-800">未开始</span> </li> <li class="flex justify-between items-center"> <span>英语单词背诵</span> <span class="px-2 py-1 text-xs rounded-full bg-green-100 text-green-800">已完成</span> </li> </ul> </div> </section> <!-- 教师端 --> <section id="teacher-port" class="port-content hidden"> <h1 class="text-2xl font-bold text-blue-800 text-center">教师管理中心</h1> <p class="text-gray-600 text-center mb-4">班级管理 · 教学分析 · 作业布置</p> <div class="grid grid-cols-2 gap-3"> <div class="bg-white rounded-lg shadow p-4 flex flex-col items-center active:scale-95 transition"> <i class="fas fa-users text-blue-600 text-2xl mb-2"></i> <h3 class="text-sm font-semibold">班级管理</h3> </div> <div class="bg-white rounded-lg shadow p-4 flex flex-col items-center active:scale-95 transition"> <i class="fas fa-tasks text-blue-600 text-2xl mb-2"></i> <h3 class="text-sm font-semibold">布置作业</h3> </div> </div> </section> <!-- 家长端 --> <section id="parent-port" class="port-content hidden"> <h1 class="text-2xl font-bold text-green-800 text-center">家长监护中心</h1> <p class="text-gray-600 text-center mb-4">关注成长 · 学习陪伴 · 家校沟通</p> <div class="bg-white rounded-lg shadow p-4"> <h2 class="font-bold text-lg mb-2 flex items-center"> <i class="fas fa-chart-pie text-green-500 mr-2"></i> 学习报告 </h2> <p class="text-sm text-gray-600">本周学习:6小时15分钟</p> </div> </section> </main> <!-- 底部导航 --> <nav class="bottom-nav fixed bottom-0 left-0 right-0 bg-white shadow-md"> <div class="flex justify-around py-2"> <button class="nav-btn text-indigo-600 flex flex-col items-center text-xs" data-tab="home" aria-label="首页"> <i class="fas fa-home text-lg mb-1"></i><span>首页</span> </button> <button class="nav-btn text-gray-500 flex flex-col items-center text-xs" data-tab="courses" aria-label="课程"> <i class="fas fa-book text-lg mb-1"></i><span>课程</span> </button> <button class="nav-btn text-gray-500 flex flex-col items-center text-xs" data-tab="stats" aria-label="数据"> <i class="fas fa-chart-line text-lg mb-1"></i><span>数据</span> </button> <button class="nav-btn text-gray-500 flex flex-col items-center text-xs" data-tab="profile" aria-label="我的"> <i class="fas fa-user text-lg mb-1"></i><span>我的</span> </button> </div> </nav> <!-- 反馈按钮 --> <button id="feedback-btn" aria-label="反馈" class="fixed bottom-20 right-4 w-12 h-12 bg-indigo-600 rounded-full shadow-lg text-white flex items-center justify-center"> <i class="fas fa-comment-dots text-xl"></i> </button> <!-- 反馈模态框 --> <div id="feedback-modal" class="feedback-modal fixed inset-0 bg-black bg-opacity-50 hidden flex justify-center items-center z-50"> <div class="feedback-content bg-white w-11/12 max-w-sm rounded-lg p-4 transform scale-95 opacity-0"> <h3 class="text-lg font-bold mb-4 text-center">意见反馈</h3> <form id="feedback-form" class="space-y-3"> <select id="feedback-type" class="w-full border rounded px-2 py-2"> <option value="suggestion">建议</option> <option value="bug">错误报告</option> <option value="question">问题咨询</option> </select> <textarea id="feedback-content" rows="3" class="w-full border rounded px-2 py-2" placeholder="请描述您的反馈..."></textarea> <div class="flex justify-center space-x-1"> <button type="button" class="rating-star text-2xl" data-rating="1">☆</button> <button type="button" class="rating-star text-2xl" data-rating="2">☆</button> <button type="button" class="rating-star text-2xl" data-rating="3">☆</button> <button type="button" class="rating-star text-2xl" data-rating="4">☆</button> <button type="button" class="rating-star text-2xl" data-rating="5">☆</button> </div> <input type="hidden" id="feedback-rating" value="0"> <button type="submit" id="submit-feedback" class="w-full bg-indigo-600 text-white py-2 rounded">提交</button> </form> </div> </div> <!-- 成功提示 --> <div id="feedback-success" class="fixed top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 bg-white p-6 rounded-lg shadow-lg hidden z-50 text-center"> <i class="fas fa-check-circle text-green-500 text-3xl mb-2"></i> <p class="font-bold">反馈成功!</p> </div> <script> document.addEventListener('DOMContentLoaded', () => { const portSelectors = document.querySelectorAll('.port-selector'); const portContents = document.querySelectorAll('.port-content'); const navBtns = document.querySelectorAll('.nav-btn'); function switchPort(port) { portSelectors.forEach(btn => { const badge = btn.querySelector('.role-badge'); badge.classList.add('hidden'); btn.classList.remove('bg-indigo-600','bg-blue-600','bg-green-600','text-white'); if(btn.dataset.port === port) { badge.classList.remove('hidden'); btn.classList.add(port === 'student' ? 'bg-indigo-600 text-white' : port === 'teacher' ? 'bg-blue-600 text-white' : 'bg-green-600 text-white'); } }); portContents.forEach(c => c.classList.add('hidden')); document.getElementById(`${port}-port`).classList.remove('hidden'); } portSelectors.forEach(btn => btn.addEventListener('click', () => switchPort(btn.dataset.port))); switchPort('student'); navBtns.forEach(btn => btn.addEventListener('click', () => { navBtns.forEach(b => b.classList.replace('text-indigo-600','text-gray-500')); btn.classList.replace('text-gray-500','text-indigo-600'); alert(`切换到 ${btn.dataset.tab} 页面`); })); const feedbackBtn = document.getElementById('feedback-btn'); const feedbackModal = document.getElementById('feedback-modal'); const feedbackContent = feedbackModal.querySelector('.feedback-content'); const feedbackForm = document.getElementById('feedback-form'); const ratingStars = document.querySelectorAll('.rating-star'); const feedbackRating = document.getElementById('feedback-rating'); const successBox = document.getElementById('feedback-success'); feedbackBtn.onclick = () => { feedbackModal.classList.remove('hidden'); setTimeout(() => { feedbackContent.classList.remove('scale-95','opacity-0'); feedbackContent.classList.add('scale-100','opacity-100'); },10); }; feedbackModal.onclick = e => { if(e.target === feedbackModal) feedbackModal.classList.add('hidden'); }; ratingStars.forEach(star => { star.onclick = () => { const rating = +star.dataset.rating; feedbackRating.value = rating; ratingStars.forEach((s,i) => { s.textContent = i < rating ? '★':'☆'; s.classList.toggle('text-yellow-400', i < rating); }); }; }); feedbackForm.onsubmit = e => { e.preventDefault(); const submitBtn = document.getElementById('submit-feedback'); submitBtn.textContent = '提交中...'; setTimeout(() => { submitBtn.textContent = '提交'; feedbackModal.classList.add('hidden'); successBox.classList.remove('hidden'); setTimeout(()=> successBox.classList.add('hidden'),2000); feedbackForm.reset(); feedbackRating.value = 0; ratingStars.forEach(s => { s.textContent = '☆'; s.classList.remove('text-yellow-400'); }); },1000); }; }); </script> </body> </html>有那些需要优化的,按照你的建议开始优化