更新记录

1.0.0(2026-05-15)

知识圈v1.0

一个基于 UniApp 打造的学习闭环知识社区 —— 从提醒学习、制定计划、获取资料、学习输入、刷题考试到排名反馈,形成完整的学习闭环。

项目简介

星云知识圈是一个以学习闭环为核心理念的综合知识平台。不同于传统的单向学习工具,它围绕"提醒 → 计划 → 输入 → 检验 → 反馈 → 激励"六大环节,将智能提醒、模板化计划、知识册子/课程/笔记、章节刷题与考试、科目排名、社交激励深度融合,让学习不再是碎片化的孤立行为,而是一个持续驱动、正向循环的成长过程。

学习闭环架构

星云知识圈围绕六大环节构建完整的学习闭环,让学习从"被动接收"变为"主动循环":

┌─────────────────────────────────────────────────────────┐
│                      学习闭环                          │
│                                                         │
│   ┌──────────┐    ┌──────────┐    ┌──────────┐         │
│   │ ① 提醒   │───▶│ ② 计划   │───▶│ ③ 输入   │         │
│   │ 智能提醒 │    │ 模板计划 │    │ 知识获取 │         │
│   └──────────┘    └──────────┘    └──────────┘         │
│        ▲                                │               │
│        │                                ▼               │
│   ┌──────────┐                   ┌──────────┐         │
│   │ ⑥ 激励   │◀──────────────────│ ④ 检验   │         │
│   │ 排名激励 │                   │ 刷题考试 │         │
│   └──────────┘                   └──────────┘         │
│        ▲                                │               │
│        │        ┌──────────┐            │               │
│        └────────│ ⑤ 反馈   │◀───────────┘               │
│                 │ 成绩分析 │                             │
│                 └──────────┘                             │
└─────────────────────────────────────────────────────────┘
环节 核心能力 对应功能
智能提醒 基于记忆曲线、学习计划、活跃时段,智能推送学习提醒 学习提醒、计划到期通知、复习闹钟
模板计划 提供多学科学习计划模板,一键生成个性化学习路径 计划模板、快速制定、进度跟踪
知识输入 多形态知识获取:购买学习手册、阅读他人笔记心得、课程视频 知识册子、圈子笔记、课程、资料库
刷题检验 每个章节/进度节点配备对应题库和考试,即学即测 章节刷题、模拟考试、错题巩固
成绩反馈 学后即测、测后即析,精准定位薄弱环节 成绩分析、知识点掌握度、错题本
排名激励 每个科目独立排名,社交互动驱动持续学习 科目排行榜、等级体系、成就奖励

项目结构

1. 应用核心配置

├── app.vue                 # 应用入口(全局配置、生命周期)
├── main.js                 # 入口逻辑(Vue实例挂载、全局插件配置)
├── manifest.json           # 应用配置(平台设置、权限声明等)
├── pages.json              # 页面路由配置(主包/分包路由、tabBar配置)
├── uni.scss                # 全局样式变量(主题色、尺寸规范等)

2. 公共资源

├── common/                 # 公共资源
│   ├── styles/             # 全局样式
│   │   ├── global.scss     # 全局通用样式(重置样式、基础类)
│   │   └── theme.scss      # 主题样式(深色/浅色模式)
│   ├── utils/              # 工具函数
│   │   ├── format.js       # 数据格式化(时间、等级等)
│   │   └── memory-curve.js # 记忆曲线算法工具
│   └── mixins/             # 全局混合
│       ├── study-mode.js   # 学习模式(通勤/图书馆/睡前模式切换+状态保存)
│       └── user-level.js   # 等级计算(等级条件校验、进度计算)

3. 全局状态管理

├── store/                  # 全局状态管理
│   ├── index.js            # store入口
│   ├── app.js              # 应用状态(主题、语言等)
│   ├── auth.js             # 认证状态(登录、注册、退出等)
│   ├── question.js         # 刷题状态(当前题库、进度、多个数据缓存等)
│   ├── exam.js             # 考试状态(当前考试、进度、多个数据缓存等)
│   ├── user.js             # 用户状态(信息、等级、VIP等)
│   ├── circle.js           # 圈子状态(点赞、评论、收藏、退粉、关注等)
│   ├── video.js            # 视频状态(播放、收藏、点赞、历史记录等)
│   ├── message.js          # 消息状态(收发、查看等)
│   ├── study.js            # 学习状态(进度、模式等)
│   ├── course.js           # 课程状态(收藏、历史等)
│   ├── order.js            # 订单状态(待付款、待收货、待评价等)
│   └── cart.js             # 购物车状态

4. 主包页面(高频访问模块)

├── pages/                  # 主包页面
│   ├── index/              # 首页模块
│   ├── circle/             # 圈子模块
│   │   ├── index.vue       # 圈子首页
│   │   ├── detail.vue      # 圈子详情页
│   │   ├── list.vue        # 圈子列表
│   │   ├── edit.vue        # 新增编辑圈子
│   │   └── statistics.vue  # 圈子统计
│   ├── book/               # 知识册子模块(分包模块)
│   │   ├── index.vue       # 首页
│   │   ├── list.vue        # 知识册子分类列表
│   │   ├── edit.vue        # 新增编辑知识册子
│   │   ├── detail.vue      # 知识册子详情
│   │   ├── question.vue    # 题库
│   │   ├── statistics.vue  # 知识册子统计
│   │   ├── doQuestion.vue  # 做题
│   │   ├── doQuestionResult.vue  # 做题结果
│   │   ├── order.vue       # 订单
│   │   ├── pay.vue         # 支付
│   │   └── success.vue     # 支付成功
│   ├── question/           # 题库模块(分包模块)
│   │   ├── index.vue       # 首页
│   │   ├── doQuestion.vue  # 做题页
│   │   ├── list.vue        # 题库列表
│   │   ├── edit.vue        # 新增编辑题库
│   │   └── statistics.vue  # 题库统计
│   ├── exam/               # 考试模块(分包模块)
│   │   ├── index.vue       # 考试首页
│   │   ├── doExam.vue      # 考试做题页
│   │   ├── result.vue      # 考试结果页
│   │   ├── edit.vue        # 创建编辑考试页
│   │   └── statistics.vue  # 考试统计
│   ├── plan/               # 计划模块(分包模块)
│   │   ├── index.vue       # 首页
│   │   ├── detail.vue      # 计划详情页
│   │   ├── edit.vue        # 新增编辑计划
│   │   └── statistics.vue  # 计划统计
│   ├── course/             # 课程模块
│   │   ├── index.vue       # 课程首页
│   │   ├── detail.vue      # 课程详情页
│   │   ├── list.vue        # 课程列表
│   │   ├── edit.vue        # 新增编辑课程
│   │   └── statistics.vue  # 课程统计
│   ├── video/              # 视频模块
│   │   ├── index.vue       # 视频首页
│   │   ├── detail.vue      # 视频详情页
│   │   ├── list.vue        # 视频列表
│   │   ├── edit.vue        # 新增编辑视频
│   │   └── statistics.vue  # 视频统计
│   ├── message/            # 消息模块
│   │   ├── index.vue       # 消息首页
│   │   ├── detail.vue      # 消息详情页
│   │   └── list.vue        # 消息列表
│   ├── notice/             # 通知中心模块
│   │   ├── index.vue       # 通知首页
│   │   ├── detail.vue      # 通知详情页
│   │   └── list.vue        # 通知列表
│   ├── setting/            # 设置模块
│   │   ├── index.vue       # 设置首页
│   │   ├── material.vue    # 资料库设置
│   │   ├── notice.vue      # 通知设置
│   │   ├── user.vue        # 用户设置
│   │   ├── system.vue      # 系统设置
│   │   ├── theme.vue       # 主题设置
│   │   ├── module.vue      # 模块设置
│   │   ├── auth.vue        # 权限设置
│   │   ├── security.vue    # 安全设置
│   │   ├── history.vue     # 历史设置
│   │   └── statistics.vue  # 统计用户
│   ├── material/           # 资料库模块
│   │   ├── index.vue       # 资料库首页
│   │   ├── detail.vue      # 资料详情页
│   │   ├── list.vue        # 资料列表
│   │   ├── edit.vue        # 新增编辑资料
│   │   ├── statistics.vue  # 资料统计
│   │   ├── upload.vue      # 资料上传
│   │   ├── order.vue       # 资料订单
│   │   ├── confrim.vue     # 资料确认
│   │   ├── import.vue      # 资料导入
│   │   └── pay.vue         # 资料支付
│   ├── mall/               # 商城模块
│   │   ├── index.vue       # 商城首页
│   │   ├── category.vue    # 分类列表
│   │   ├── detail.vue      # 商品详情页
│   │   ├── goods.vue       # 商品列表
│   │   ├── cart.vue        # 购物车页
│   │   ├── order.vue       # 订单页
│   │   ├── pay.vue         # 支付页
│   │   └── success.vue     # 支付成功页
│   ├── coupon/             # 优惠券模块
│   │   ├── list.vue        # 优惠券列表
│   │   ├── detail.vue      # 优惠券详情页
│   │   └── use.vue         # 优惠券使用
│   ├── vip/                # 会员中心模块
│   │   ├── index.vue       # 会员中心首页
│   │   ├── card.vue        # 会员卡页
│   │   ├── recharge.vue    # 会员充值页
│   │   ├── record.vue      # 会员记录页
│   │   ├── pay.vue         # 支付页
│   │   ├── success.vue     # 支付成功页
│   │   ├── withdraw.vue    # 提现页
│   │   ├── withdraw-record.vue  # 提现记录页
│   │   └── report.vue      # 会员报表页
│   └── mine/               # 个人中心模块
│   │   ├── index.vue       # 个人中心首页
│   │   ├── profile.vue     # 个人资料页
│   │   ├── wallet.vue      # 钱包页
│   │   ├── setting.vue     # 设置页
│   │   ├── address.vue     # 地址管理页
│   │   ├── feedback.vue    # 意见反馈页
│   │   └── about.vue       # 关于我们页
│   └── user/               # 用户模块
│       ├── index.vue       # 用户首页
│       ├── detail.vue      # 用户详情页
│       ├── follow.vue      # 关注列表页
│       ├── fans.vue        # 粉丝列表页
│       ├── collection.vue  # 收藏列表页
│       ├── comment.vue     # 评论列表页
│       └── collect.vue     # 我的收藏

5. 圈子模块

circle/
├── index.vue              # 首页(笔记信息流)
├── user/
│   ├── index.vue          # 圈子用户列表
│   ├── detail.vue         # 圈子用户详情
│   ├── follow.vue         # 关注列表
│   ├── fans.vue           # 粉丝列表
│   ├── collection.vue     # 收藏列表
│   └── comment.vue        # 评论列表
├── group/                 # 群组相关
│   ├── list.vue           # 我的群组列表
│   ├── chat.vue           # 群聊界面
│   ├── create.vue         # 创建群组
│   ├── detail.vue         # 群组详情
│   ├── member.vue         # 群组成员
│   ├── notice.vue         # 群组公告
│   ├── setting.vue        # 群组设置
│   ├── invite.vue         # 邀请成员
│   ├── exit.vue           # 退出群组
│   ├── disband.vue        # 解散群组
│   ├── kick.vue           # 踢出成员
│   ├── ban.vue            # 禁言成员
│   ├── unban.vue          # 解除禁言
│   ├── mute.vue           # 禁言群组
│   ├── permission.vue     # 群组权限
│   ├── audit.vue          # 群组审核
│   ├── noticeSetting.vue  # 群组通知设置
│   └── memberSetting.vue  # 群组成员设置
├── note/                  # 笔记相关
│   ├── index.vue          # 笔记首页
│   ├── edit.vue           # 编辑笔记
│   ├── list.vue           # 笔记列表(按分类/标签)
│   ├── detail.vue         # 笔记详情页
│   ├── publish.vue        # 笔记发布页
│   ├── comment.vue        # 笔记评论页
│   ├── collect.vue        # 笔记收藏页
│   ├── share.vue          # 笔记分享页
│   ├── reward.vue         # 笔记打赏页
│   ├── like.vue           # 笔记点赞页
│   └── favorite.vue       # 笔记收藏页
└── message/               # 私信相关
    ├── list.vue           # 私信列表
    └── chat.vue           # 私信聊天页

6. 商城模块

mall/
├── index.vue              # 商城首页
├── goods/
│   ├── list.vue           # 商品列表页
│   ├── detail.vue         # 商品详情页
│   ├── classify.vue       # 商品分类页
│   └── search.vue         # 商品搜索页
├── cart.vue               # 购物车页
├── order/                 # 订单相关
│   ├── list.vue           # 订单列表
│   ├── detail.vue         # 订单详情
│   └── confirm.vue        # 订单确认页
└── user/
    ├── profile.vue        # 个人资料页
    ├── wallet.vue         # 钱包页
    ├── order.vue          # 订单页
    ├── address.vue        # 地址管理页
    ├── feedback.vue       # 意见反馈页
    ├── about.vue          # 关于我们页
    ├── collect.vue        # 我的收藏页
    ├── setting.vue        # 设置页
    └── vip/               # 会员中心分包
        ├── index.vue      # VIP首页(权益展示:商城折扣/题库付费减免/辅导优惠)
        ├── recharge.vue   # VIP充值(月度/季度/年度套餐选择)
        ├── record.vue     # VIP记录(充值记录、有效期)
        └── withdraw.vue   # 提现(学霸辅导收益提现,平台分后金额)

️ 技术栈

  • 前端框架: UniApp
  • 状态管理: Vuex
  • UI 框架: uView UI
  • 云服务: uniCloud
  • 数据库: uniCloud 云数据库

功能模块

① 智能提醒 —— 学不遗忘

  • 学习提醒: 基于艾宾浩斯记忆曲线,在最佳复习节点自动推送提醒
  • 计划通知: 学习计划到期、每日任务未完成时智能催促
  • 活跃时段识别: 分析用户学习习惯,在最高效时段推送提醒
  • 复习闹钟: 针对错题、薄弱知识点定时提醒巩固

② 模板计划 —— 快速起步

  • 计划模板库: 提供考研、考公、语言学习、职业技能等多学科模板
  • 一键生成: 选择模板即可自动生成分阶段、分章节的学习路径
  • 自定义计划: 拖拽调整章节顺序、时间节点,灵活适配个人节奏
  • 进度可视化: 甘特图 + 百分比双维度展示计划完成情况

③ 知识输入 —— 多元获取

  • 知识册子(学习手册): 用户可创作并出售自己的学习手册,他人可购买学习
  • 圈子笔记: 浏览他人分享的学习笔记、心得感悟,社区共建知识库
  • 课程视频: 视频课程学习,支持收藏、历史记录、倍速播放
  • 资料库: 学习资料上传、下载、购买,支持多种文件格式
  • 学霸辅导: 预约学霸一对一辅导、在线答疑

✏️ ④ 刷题检验 —— 即学即测

  • 章节配套刷题: 每个知识册子章节、每个学习进度节点配备专项题库
  • 模拟考试: 全真模拟考试环境,限时答题、自动评分
  • 错题本: 自动收录错题,按知识点分类,支持反复练习
  • 题目收藏: 收藏重点题目,考前集中回顾

⑤ 成绩反馈 —— 精准定位

  • 成绩分析报告: 考试后自动生成详细分析,展示各知识点得分率
  • 知识点掌握度: 热力图展示各章节掌握程度,薄弱环节一目了然
  • 错题归类: 按错误类型(概念混淆、计算失误、记忆遗忘等)智能归类
  • 学习建议: 基于成绩数据,推荐优先复习的知识点和对应题库

⑥ 排名激励 —— 持续驱动

  • 科目排行榜: 每个学科独立排名,支持日榜/周榜/月榜/总榜
  • 等级体系: 学习积分累积升级,解锁更高等级和特权
  • 成就奖励: 连续打卡、满分考试、刷题达人等成就徽章
  • 学习统计: 学习时长、刷题数量、正确率等多维度数据看板

社交互动

  • 圈子: 笔记分享、点赞评论、关注收藏、打赏激励
  • 群组: 群组聊天、成员管理、群公告、学习小组
  • 私信: 一对一聊天,学友交流
  • 通知: 系统通知、互动消息、学习动态

商城 & VIP

  • 商城: 学习手册、课程、资料一站式购买
  • 购物车: 批量选购、统一结算
  • 优惠券: 领取使用,学习消费更优惠
  • 会员中心: VIP充值、专属折扣、提现功能

个人中心

  • 个人资料: 信息编辑、头像设置、学籍信息
  • 我的订单: 知识册子/课程/资料购买记录
  • 钱包: 余额管理、充值提现
  • 设置: 主题切换、学习模式、通知管理、账号安全

快速开始

环境要求

  • Node.js >= 14.0.0
  • HBuilder X 最新版
  • 微信开发者工具(小程序开发)

安装依赖

npm install

开发运行

# 运行到微信小程序
npm run dev:mp-weixin

# 运行到 H5
npm run dev:h5

# 运行到 App
npm run dev:app

构建发布

# 构建微信小程序
npm run build:mp-weixin

# 构建 H5
npm run build:h5

# 构建 App
npm run build:app

项目特色

  • 学习闭环: "提醒 → 计划 → 输入 → 检验 → 反馈 → 激励"六大环节首尾相连,学习不再是单向行为
  • ⏰ 智能提醒: 基于艾宾浩斯记忆曲线,在最佳遗忘节点自动提醒复习,对抗知识遗忘
  • 模板化计划: 多学科学习计划模板一键套用,告别"不知道从何学起"的困境
  • 知识交易: 用户可创作并出售学习手册,知识变现,激发优质内容生产
  • ✏️ 章节即测: 每完成一个章节/进度节点,立即匹配专项题库和考试,学完即测
  • 精准反馈: 成绩分析 + 知识点热力图,精准定位薄弱环节,避免盲目学习
  • 科目排名: 每个学科独立排行榜,日/周/月/总榜多维度竞争
  • 社交学习: 圈子笔记分享、群组讨论、学霸辅导,学习不再孤单
  • 主题切换: 支持深色/浅色模式,通勤/图书馆/睡前多场景适配
  • 多端适配: 支持微信小程序、H5、App 等多端运行,学习随时随地
  • ⚡ 分包加载: 采用分包策略,优化首屏加载速度

开发规范

文件命名

  • 页面文件使用小写字母,多个单词用连字符连接:user-profile.vue
  • 组件文件使用大驼峰命名:UserAvatar.vue
  • 静态资源使用小写字母,多个单词用连字符连接:icon-home.png

代码规范

  • 使用 ESLint 进行代码检查
  • 遵循 Vue.js 官方风格指南
  • 组件数据使用函数返回对象形式
  • 合理使用计算属性和侦听器

提交规范

  • 使用语义化提交信息
  • 格式:类型(范围): 描述
  • 示例:feat(circle): 添加笔记点赞功能


平台兼容性

云端兼容性

阿里云 腾讯云 支付宝云

uni-app(4.36)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
× × × × ×
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
× × × × × × × × × - × ×

其他

多语言 暗黑模式 宽屏模式
×

云函数类插件通用教程

使用云函数类插件的前提是:使用HBuilderX 2.9+


隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

暂无用户评论。