Joyfully 是一款开源的在线学习辅助系统,可以视为问题记录和知识分享的结合网站。Joyfully还支持文件上传,用来分享你的学习笔记或者问题记录。
本项目部分的参考来源于一个Anki的字卡软件,Anki中每个知识点配置相应的卡片式复习的方式给了笔者触动。例如有一个设计模式的问题,使用者可以将对应的知识转化成问答的形式存储起来,之后在进行复习过程中根据问题联想答案,使用者在联想结束后根据自身的认识将问题判断为:已掌握,模糊,不记得三类选择。根据后台所采用的不同的知识分配的算法还能提升使用者的记忆率,例如艾宾浩斯遗忘曲线。这样设计的方式还能让对应的问答集可以整合起来,变成通用的知识库以供流传。
本项目还有部分设计参考自百度知道、知乎等问题社区,此类问题社区是管理员和审核员设计的参考来源。
后端: SpringBoot + MyBatisPlus
前端: Vue + Vue-Router + Axios + Element-Plus
数据库: MySQL
JDK: jdk1.8.0_281
MySQL:mysql-5.7.33-Win64-x86_64
Node:v14.15.1
IDE:IntelliJ IDEA 2020、SQLyog
2021-12-14 版本 1.0.0
主要功能:
- 用户
- 对自己所创建的问题进行操作
- 回顾问题
- 上传笔记文件等
- 聊天室询问其他在线人员
- 管理员
- 对用户、问题、文件统筹管理
待解决问题:
- 聊天室的用户无法得知对方是否收到消息
- 用户界面未独立出来,和管理员共用一套页面布局
- 管理界面进行用户管理时第一页显示不正确(具体表现为第一页总是只显示几行用户数据)
- 界面还需优化,需要将用户和管理员剥离,并计划采用隐性验证,将登录界面的用户、管理员单选框去除
2022-5-7 版本1.1.0
新增功能:
-
用户
- 问题广场
- 资源广场
-
管理员
- 公告管理
-
审核员
- 对问答、资源进行审核
-
通用
- 主页(展示公告以及优秀问题、资源等)
-
更改个人信息及密码
- 消息(离线消息,在页面展示中取消了上版本的聊天室)
问题解决:
- 取消了聊天室的前台展示,新增消息功能(离线消息)
- 部分用户界面依然不够美观,还是与后台管理的风格类似
- 已解决
- 已解决
新问题:
- 资源预览只能打开新页面,无法在本页面窗口预览
- 部分按钮或标签过于僵硬,替换成动态图标应该更生动
- 消息模块过于单薄,只能发送文字消息
- 未实现Anki中的助记模块,预计未来版本实现
- 对问题模块SQL查询中 多表联查限制指定表条数失败