Files
ZhiQiXiaoYuan/README.md
ChuXun eaab9a762a 1
2025-10-19 20:28:31 +08:00

7.8 KiB
Raw Permalink Blame History

🎓 知芽小筑

一款功能完善的微信小程序为大学生提供课程管理、学习数据分析、AI助手等核心功能。


📱 核心功能模块

1. 🏠 首页index

  • 快速入口导航
  • 今日课程预览
  • 重要倒计时提醒
  • 学习数据概览

2. 📚 课程管理courses

  • 课程列表展示
  • 分类浏览(全部/进行中/已结束)
  • 课程详情查看
  • 课程资料管理

3. 📅 课程表schedule

  • 周视图课表
  • 当前时间定位
  • 课程详情快速查看
  • 空闲时间显示

4. 💬 论坛forum

  • 帖子浏览
  • 发帖功能
  • 点赞评论
  • 收藏功能
  • 话题分类

5. 🎯 GPA计算器gpa

  • 成绩录入
  • 学分管理
  • 加权平均绩点计算
  • 学期分组统计

6. ⏱️ 倒计时countdown

  • 重要事件提醒
  • 考试倒计时
  • 自定义事件添加
  • 天数自动计算

7. 🛠️ 工具箱tools

  • 实用工具集合
  • 快捷功能入口

8. 🤖 AI助手启思AI

  • 智能对话
  • 学习问题解答
  • DeepSeek API集成
  • 对话历史记录
  • 实时流式响应

9. 📊 学习数据dashboard

4大数据可视化功能

9.1 学习能力画像(雷达图)

  • 6维度综合评估
  • 专注度、活跃度、学习时长等
  • Canvas 高质量绘制

9.2 GPA趋势预测折线图

  • 历史成绩趋势展示
  • 多项式回归预测
  • 智能预测下学期GPA
  • 趋势分析(上升/下降)

9.3 时间分配(饼图)

  • 各模块使用时长统计
  • 课程、论坛、工具、AI助手
  • 自动计算占比
  • 彩色可视化

9.4 成绩对比(柱状图)

  • 个人 vs 班级平均
  • 超过平均课程数统计
  • 班级排名展示

10. 👤 个人中心my

  • 个人信息展示
  • 功能设置
  • 数据统计
  • 系统设置

🎨 技术特色

UI/UX设计

  • 企业级视觉设计:紫色渐变主题
  • 动画效果:平滑过渡、加载动画
  • 响应式布局:适配不同屏幕尺寸
  • 组件化开发loading、empty等通用组件

数据管理

  • 持久化存储wx.storage API
  • 自动数据追踪learningTracker系统
  • 实时数据同步12个页面集成
  • 智能数据分析GPA预测、趋势分析

性能优化

  • 懒加载:图表延迟渲染
  • 数据缓存:减少重复计算
  • 异步处理:流式响应
  • 错误处理:友好的空数据提示

📦 技术栈

前端框架

  • 微信小程序原生框架
  • Canvas API:图表绘制
  • WXSS:样式设计

核心工具库

  • utils/learningTracker.js - 学习时间自动追踪
  • utils/gpaPredictor.js - GPA预测算法
  • utils/util.js - 通用工具函数
  • utils/storage.js - 数据存储管理
  • utils/request.js - 网络请求封装
  • utils/logger.js - 日志系统
  • utils/analytics.js - 数据分析
  • utils/performance.js - 性能监控

第三方服务

  • DeepSeek APIAI对话功能
  • 微信云服务:数据存储(可选)

🗂️ 数据存储结构

核心存储键

// GPA课程成绩
'gpaCourses': [
  { id, name, score, credit, semester }
]

// 学习数据
'learning_data': {
  totalDays: 30,
  totalHours: 85.5,
  dailyRecords: []
}

// 模块使用时长(自动记录)
'module_usage': {
  course: 28.5,  // 小时
  forum: 22.3,
  tools: 25.7,
  ai: 9.0
}

// 学习画像(自动记录)
'learning_profile': {
  focus: 85,      // 专注度
  activity: 90,   // 活跃度
  duration: 75,   // 学习时长
  breadth: 88,    // 知识广度
  interaction: 72,// 互动性
  persistence: 95 // 坚持度
}

// 课表数据
'schedule': [
  { id, name, time, location, teacher, weeks, dayOfWeek }
]

// 倒计时事件
'countdowns': [
  { id, name, targetDate, description, color }
]

// 论坛收藏
'favoriteForumIds': [id1, id2, ...]

// AI对话历史
'ai_chat_history': [
  { role: 'user', content: '...', timestamp: ... },
  { role: 'assistant', content: '...', timestamp: ... }
]

🚀 核心功能实现

1. 学习时间自动追踪

原理:每个页面集成 learningTracker

// 在 onShow() 中
learningTracker.onPageShow('pageName');

// 在 onHide() 中
learningTracker.onHide();

已集成页面12个

  • index, courses, course-detail, schedule
  • forum, forum-detail, post, gpa
  • countdown, tools, my, dashboard

2. GPA自动计算与预测

流程

  1. 用户在 GPA页面 录入课程成绩
  2. 存储到 gpaCourses
  3. dashboard页面 自动读取
  4. 按学期分组计算平均GPA
  5. 使用多项式回归预测下学期

算法utils/gpaPredictor.js

  • 数据清洗
  • 学期分组
  • 加权平均计算
  • 多项式回归
  • 预测与置信度评估

3. AI对话流式响应

技术实现

// 流式读取API响应
const reader = res.data.getReader();
while (true) {
  const { done, value } = await reader.read();
  if (done) break;
  
  // 解析SSE格式
  // 实时更新界面
  // 显示打字效果
}

📊 数据可视化

Canvas图表绘制

支持的图表类型

  1. 雷达图 - 学习能力6维评估
  2. 折线图 - GPA趋势与预测
  3. 饼图 - 时间分配占比
  4. 柱状图 - 成绩对比分析

技术特点

  • 高分辨率适配pixelRatio
  • 响应式尺寸
  • 平滑动画
  • 彩色图例
  • 数据标注

🎯 特色亮点

1. 企业级设计系统

  • 统一的颜色主题(紫色渐变)
  • 完整的动画库
  • 组件化样式
  • 响应式布局

2. 智能数据分析

  • 自动追踪学习时间
  • GPA趋势预测
  • 学习画像生成
  • 多维度数据可视化

3. AI助手集成

  • DeepSeek大模型
  • 流式对话体验
  • 对话历史管理
  • 智能学习建议

4. 完善的功能生态

  • 课程管理
  • 论坛交流
  • GPA计算
  • 倒计时提醒
  • 数据分析
  • AI助手

📈 代码统计

  • 总代码量:约 15,000+ 行
  • 页面数量12个主要页面
  • 组件数量2个通用组件
  • 工具函数9个核心工具文件
  • 样式文件6个主题样式

🔧 开发与维护

环境要求

  • 微信开发者工具
  • Node.js可选用于工具链

本地运行

  1. 打开微信开发者工具
  2. 导入项目文件夹
  3. 配置 AppID
  4. 点击编译运行

数据初始化

  • 首次启动自动初始化示例数据
  • 存储键:demo_data_initialized
  • 可通过控制台手动初始化

📝 文档清单

  • 学习数据功能说明.md - 数据可视化详解
  • 学习活跃度删除记录.md - 功能删除记录
  • 如何直接添加持久化存储数据.md - 数据管理指南
  • 课表功能优化说明.md - 课表功能文档
  • 课表使用指南.md - 用户使用指南
  • 个人中心功能测试指南.md - 测试文档
  • 论坛收藏功能说明.md - 论坛功能文档

🎓 项目亮点(适合答辩)

技术创新

  1. 自动化数据追踪系统 - 零侵入式学习时间记录
  2. GPA智能预测算法 - 多项式回归+趋势分析
  3. AI对话流式响应 - 打字效果+实时交互
  4. Canvas高质量图表 - 4种图表类型+响应式

功能完整性

  1. 12个功能页面 - 覆盖学习全流程
  2. 企业级设计 - 统一视觉规范
  3. 数据持久化 - 完整的存储方案
  4. 性能优化 - 懒加载+缓存策略

用户体验

  1. 直观的数据可视化 - 一目了然的学习状态
  2. 智能的AI助手 - 随时解答学习问题
  3. 便捷的工具集合 - GPA、课表、倒计时
  4. 社交论坛功能 - 学习交流互动

项目完整、功能丰富、技术先进! 🎉


📄 License

MIT License


👨‍💻 开发者

GitHub: ChuXunYu/program


最后更新2025年10月14日