# forest

下一代的知识社区系统,为未来而建

## 💡 简介

forest（[ˈfôrəst]，n.森林）是一款现代化的知识社区项目，使用 SpringBoot + Shrio + MyBatis + JWT + Redis 实现

## ⚡ 动机

在 2019 年的某一天,受到 [Hugh](https://rymcu.com/user/RYMCU-J) 的邀请, 构建一个开源嵌入式知识学习交流平台。因此就有了 forest 这个项目。 
forest 在很多方面受到了 [Symphony](https://github.com/88250/symphony) 的启发,并尝试着在 [Symphony](https://github.com/88250/symphony) 和 [B3log 思想](https://ld246.com/article/1546941897596) 的基础上进一步探索。

## ✨  特性

```
内容编辑器
	Markdown（GFM）
	Emoji
	上传文件
		图片
		文件
		单独渲染 MP3
		单独渲染视频
	剪贴板处理
		粘贴内容处理为 Markdown
		粘贴图片自动重新上传
	数学公式（LaTeX）、流程图支持
	快捷键支持
	工具栏
		表情
		粗体
		斜体
		引用
		无序列表
		有序列表
		链接
		上传
		预览
		全屏
	编辑模式
		传统的 Markdown 分屏编辑预览
		保留 Markdown 标记符的即时渲染
		类富文本编辑器的所见即所得
注册
	用户名
	Email
	验证码
	邮件验证
	新手向导
		上传头像
		关注标签
		关注用户
		帮助指引
登录
	账户（用户名/Email）
	密码
	忘记密码
		Email
		验证码
发帖
	帖子类型
		普通帖子
	标题
	正文
		内容编辑器
		本地存储
	标签
		使用已有（选择、自动完成）或创建
		过滤
			黑白名单
			规范化
		默认“待分类”
	发布后
		可更新
		可删除
回帖
	内容编辑器
	本地存储
	回复（回复针对回帖）
货币
	货币规则
浏览帖子
	实时热度
	编辑自己的帖子
	发布时间/浏览数/回帖数/标签
	上一篇/下一篇
	分享
		微信
		QQ
		分享链接（带用户标识）
	相关帖子
	缩略摘要
帖子列表
	专题
		相关标签
	最新
	优选
	搜索
	标签
		相关标签
		创建者
		贡献者
		关注/引用/回帖数
		所属专题
		关注
	排序
		默认（按发布时间降序）
		热议（按回帖数降序）
		好评（按评分降序）
		最近回帖（按最近回帖时间降序）
	首图
	实时热度
	最新回复
	回帖数
	创建时间
后台管理
	后台首页
		数据统计
			当前在线
			会员在线
			最高在线
			会员
			帖子
			专题
			标签
			回帖
	用户管理
		按用户名/邮件搜索
		添加新用户
		用户数据维护
			各字段数据
			用户状态
				正常
				未验证
				限制登录
				封禁
			高级更新
				用户名
				邮箱地址
	帖子管理
		按 id 搜索帖子
		重建所有帖子搜索索引
		添加新帖
		帖子数据维护
			锁定帖子
			删除帖子
	专题管理
		按名称搜索专题
		添加专题
		专题数据维护
			添加/移除相关标签
			名称
			URI
			描述
			图标
			是否用于导航
			状态
			CSS
			SEO
				title
				keywords
				description
			删除专题
	标签管理
		按名称搜索标签
		添加标签
		标签数据维护
			名称
			URI
			描述
			图标
			状态
			CSS
			SEO
				title
				keywords
				description
	角色管理
		内建角色
			管理员
			社区管理员
			作者
			普通用户
		创建角色
		功能权限
浏览统计
	实时统计
		会员
		帖子
		专题
		标签
		回帖
	数据统计
		最近 30 天
		历史
		新发贴数
		新用户数
消息通知
	消息数
	标记已读
	消息类别
		收到的回帖
		收到的回复
		收到的评论
		提及我的
			关注
		我关注的
			关注的用户发帖
个人主页
	用户统计数据
	积分
	关注标签
	收藏帖子
	关注者
	关注用户
	站点连接
首页
	专题、发帖、通知、个人等入口
	专题导航列表
	对搜索引擎爬虫友好
用户设置
	基本信息
		昵称
		URL
		个性签名
		个人主页背景图
		个人卡片背景图
		站点连接
			GitHub
			微博
			QQ
			微信
	头像
	账号
		绑定邮箱
		更新密码
		更新用户名
		永久停用账号
	钱包
		交易记录
	帮助
		使用入门
		基础知识
		Markdown 教程
评论
	发布评论
```

## 报告缺陷 

> 社区系统可能存在一些潜在的缺陷，大家如果有空的话可以帮助我们一起解决。

如果你在使用社区时发现了如下类型的问题，请回帖进行反馈，并附上 bug 截图以及操作步骤：

* **功能性缺陷**：例如发布文章失败、创建作品集失败等
* **安全性漏洞**：例如 XSS/CSRF、盗用用户信息等

## 功能建议

欢迎对社区提出功能特性方面的建议，我们一起讨论，如果有可能我们会尽快实现。

在提功能建议前可以先看一下 [计划表](https://rymcu.com/article/29) ，避免重复提议