1 Star 1 Fork 1.1K

szzxing / BookStack

forked from 进击的皇虫 / BookStack 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
change.md 14.16 KB
一键复制 编辑 原始数据 按行查看 历史
TruthHun 提交于 2019-10-16 20:28 . APP链接跳转

目录

采集内容,图片不正确

开发日志

TODO

  • a 标签中的英文括号统一转成中文括号
  • 文档采集,replace过滤和替换采集到的网页标签和内容,图片懒加载的文档项目,也无处可逃。
  • 导出markdown
  • 在线HTML转markdown工具
  • 直接访问编辑页面,登录的cookie过去无法编辑文档问题
  • 书籍发布队列
  • 增加广告管理功能
  • 电子书下载页面,扩展站点页面
  • 电子书检验,不存在的电子书,重新生成
  • 增加打赏按钮显示与隐藏(根据书籍而定,默认隐藏)
  • 增加电子书下载管控,是否必须登录才能下载电子书
  • 发布队列
  • 增加博客(文章)系统功能
  • 申请成为作者的功能(提交自己GitHub、gitee和博客等相关内容)
  • 增加实体书功能(广告)
  • 增加网络课程推广功能(广告)
  • 增加 wiki 功能
  • ElasticSearch支持搜索博客、wiki和实体书
  • 增加程序员工具箱功能(长期工作)
  • 管理后台,增加一个环境监测,用于检测网站各项依赖是否正常

v2.2 升级日志

  • 使用go mod方式管理程序的包依赖(建议二次开发的朋友把go开发环境升级到支持go mod的go版本)
  • APP下载单页配置管理
  • 书籍信息设置页,支持增加文字广告功能,并增加 APP 跳转页
  • 电子书是否登录才能下载
  • 移动端横幅尺寸控制(由于移动端横幅展示,为了不使横幅变形,以及能够灵活控制移动端横幅宽高比例显示)
  • 支持项目设置给项目内容增加全局文字小广告功能,比如添加原作者赞助二维码链接或者是原作者实体书购买地址等,以便支持开源作者
  • 私有项目,增加访问密码(项目成员可以免密码访问)
  • 小分辨率电脑,内容阅读时,不悬浮显示内容菜单,避免影响阅读体验
  • 配置管理,增加图片链接由http://自动替换为https://开关,因为 --> Chrome 将不再允许 https:// 页面加载 HTTP 资源
  • 如果只有作者才能写作,则如果项目创建者不是作者,已创建了项目的,不允许私有转公有、不允许私密分享
  • 项目成员PC端无法访问和编辑项目的问题处理
    • 管理员和创始人可以设置书籍信息以及生成电子书
    • 编辑者以上权限可以克隆、上传等对项目进行编辑操作

V2.1 升级日志

  • 解决 2.0 版本,初始化管理员失败(密码长度修改导致)的问题
  • html转json实现,以兼容各种小程序和uni-app的富文本组件rich-text对内容的渲染
  • markdown导入功能获取标题优化
  • 内容采集持续优化,URL链接替换优化
  • 支持隐藏收录入口
  • 支持隐藏项目开源入口
  • API接口用户注册接口,支持控制每小时和每天的用户注册数量,以避免恶意攻击
  • 文档内容,SEO 标题支持获取文档的上一个文档的标题
  • puppeteer采集优化
  • 首页分类,增大块点击范围以优化体验
  • 编译的时候版本变量注入
  • 管理后台用户列表用户注册时间格式化
  • 增加虚拟根目录

V2.0 开发升级日志

  • 微信小程序API接口开发
  • 书籍在发布的时候,把非站内图片自动采集下来
  • BookStack 配套微信小程序 BookChat API接口实现,累计20+个API接口
  • 修复删除项目时误删默认封面的bug
  • HTML内容处理,以兼容微信小程序rich-text组件实现微信小程序文档内容渲染
  • 开源书籍和文档收录提交入口以及收录管理
  • 增加网站小程序码功能,打通PC端与移动端一体化阅读浏览
  • 内容采集增强和优化
  • 评论审核与管理功能开发
  • 微信小程序配置(在 app.conf 文件中)
  • 横幅管理
  • 支持 epub 导入
  • 隐藏附件管理入口(因为不依赖于此管理附件)
  • 管理后台可根据用户名、昵称、邮箱和角色对用户进行检索和管理
  • 增加作者角色,用于控制普通用户创建项目权限

v1.7 升级日志

  • 增加书籍和文档搜索精度控制(在管理后台可设置)
  • 增加钉子功能,把想要置顶的书籍置顶在发现列表页首位
  • 文档阅读,移动端展开菜单优化(右下角增加展开菜单按钮)
  • 跳转编辑指定文档
  • 流程图、时序图、数学公式的支持和优化
  • 移除外部引入的js、css公共资源库,实现本地化和内网部署的优化
  • 文章内容目录显示优化
  • 管理员删除书籍,需要输入管理员密码
  • 增加书籍语种分类(中文、英文、其他)
  • 增加首页最新推荐书籍内容
  • 增加关联书籍推荐功能(需要启用elasticsearch)
  • SEO 优化,如果文档内容图片缺少alt,自动使用文档标题填充
  • 采集HTML的时候,block 里面的内容不转markdown
  • 书籍分类统计不正确的问题
  • 采集功能增强,自带截图功能。
  • 更新MySQL驱动,支持MySQL 8.x

V1.6 升级日志

  • 使用puppeteer采集的支持(需要安装node以及在当前程序目录下安装node的puppeteer模块)
  • 根据邮箱找回密码
  • <bookstack-split></bookstack-split>,文档拆分功能
  • 文章二维码,扫一扫,手机阅读
  • 文档采集功能优化
    • 增加HTML标签排除功能:<exclude></exclude>,如要排除标签h5以及class为hello、id为"book"的HTML内容,写法是<exclude>h5,.hello,#book</exclude>
    • 文档图片采集优化,支持svg等缩图图片格式和base64的图片采集
  • 增加全书指定字符替换功能
  • 使用 elasticsearch 实现全文搜索(在管理后台->配置管理进行设置)
    • 搜索功能,支持搜索书籍和全站文档
    • elasticsearch 只返回搜索结果的id,不返回大量的数据
    • 文章、搜索结果页关键字高亮
    • elasticsearch分词
    • 实时索引
      • 删除文档,同时删除文档对应的索引
      • 书籍公有和私有之间转换,同步更新索引中书籍的公有和私有状态
      • 发布文档,实时更新对应的书籍对应文档的全量索引
      • 更新书籍信息,同步更新书籍的索引
      • 删除书籍,同步删除概述及的所有相关文档
      • 管理后台控制默认搜索的是文档还是书籍
    • 文档内的搜索,使用elasticsearch
  • 在书籍编辑页面可以克隆或者是上传markdown
  • 文章内容页顶部显示 作者、发布时间、更新时间、浏览量、分享人
  • 新建和编辑项目,支持添加原作者和原作者链接
  • 文档文章内容,顶部标题下显示信息
  • 管理后台控制第三方登录的显示与隐藏
  • HTML table 渲染问题优化(把editormd.js中的breaks设置为false)
sudo docker run -it -p 9300:9300 -p 9200:9200 --restart always -v /Users/TruthHun/elasticsearch/data:/usr/share/elasticsearch/data -v /Users/TruthHun/elasticsearch/config:/usr/share/elasticsearch/config --name bookstack-search truthhun/elasticsearch:6.2.4.ik
sudo docker run -it -p 9300:9300 -p 9200:9200 -v /Users/TruthHun/elasticsearch/data:/usr/share/elasticsearch/data --name bookstack-search truthhun/elasticsearch:6.2.4.ik

V1.5 升级日志

  • 修复:文档项目删除时间过长进而导致删除失败的Bug(启用了MySQL的事务,但事务中SQL语句有select字句查询造成的问题)
  • 修复:项目成员列表显示不全的Bug(分页问题导致) #25
  • 修复:文档项目标识正则匹配规则不正确的问题
  • 优化:分类在筛选文档项目的时候,SEO优化,以文档分类作为title等,不再以首页的文案作为title
  • 优化:一键采集文档项目,自动检测并下载图片
  • 优化:恢复文档模板功能
  • 优化:文档中,图片不再使用带http的URL绝对路径,以解决更换域名后写死的URL找不到图片
  • 新增:书籍推荐,在封面加上"推荐"图标标志。
  • 新增:Git Clone 的方式导入项目
    • 编辑文档图片需要处理
    • 阅读页面图片需要处理
    • 导出文档图片需要处理
    • 项目导入的图片需要处理
  • 优化:文档阅读体验优化
    • 文档阅读页面左侧章节菜单,可展开和收起
    • 键盘左右方向键按键切换文档上下章节
    • 文档目录全部展开,所有章节一目了然
    • 移除jstree插件(因为使用该插件,在用户网速比较慢的情况下左侧章节目录排版会出现错乱,影响体验)
    • 已阅读章节,打勾标识出来,以便知道哪些章节已读哪些章节未读
    • 章节目录跟随阅读进度定位位置
  • 新增:版本控制(在)
    • 文档编辑历史,使用文件存储的方式进行记录,不存入数据库.
    • 版本控制,在<bookstack-git></bookstack-git>标签内添加文案用以提交版本说明。如<bookstack-git>first commit</bookstack-git>等同于git commit -m "first commit"
    • 删除版本记录的时候要同时删除版本文件
    • 删除文档项目时同时删除项目所有的相关文档章节版本记录
    • 删除单个文档章节以及删除上一级文档章节,则被删除的文档章节的历史版本记录同样要删除
  • SUMMARY.md功能扩展,输入<bookstack-auto></bookstack-auto>,获取所有文档章节标识

V1.4 升级日志

  • 修复:由于js使用严格模式(use strict),导致文档目录收起之后无法展开
  • 修复:采集内容,URL链接和图片链接补全不正确
  • 优化:书籍离线文档生成加锁优化,移除app.conf中的GenerateInterval配置项
  • 优化:PDF、epub和mobi等电子书生成工具 Converter,在生成电子书时,自动生成封面。
  • 优化:<bookstack-summary>标签的一键排序和批量创建文档的功能。
  • 移除:生成PDF的时候,移除HTML中的Markdown TOC。
  • 新增:提供Dockerfile,让部署程序更快更简单。在下载BookStack程序的时候,请下载Docker版,压缩包内含有Dockerfile文件。
  • 新增:爬虫一键采集功能,采集整理书籍,一步到位!

本次更新,新增了数据表初始数据,旧版本用户,直接执行./BookStack install操作,对数据库表进行升级(不会影响原有表数据和结构)。

V1.3 开发升级预告

  • 新增:用户阅读记录和阅读进度
  • 新增:阅读书签功能,以便读者标记阅读位置
  • 新增:书籍详情页和文档内容页增加分享功能(由于百度分享等现有分享代码不支持https,所以使用本地化百度分享源码解决方案 https://github.com/hrwhisper/baiduShare
  • 新增:使用KaTeX( https://github.com/Khan/KaTeX ),扩展对数学公式的支持
  • 优化:更新HTML转markdown工具html2md,强化转化效果
  • 修复:文档内URL链接大小写问题优化 issue#20
  • 修复:友链唯一索引问题(默认的字段varchar类型长度(255)过长,导致部分MySQL数据库无法生成唯一索引)
  • 修复:文档内容更新了,执行发布文档操作的时候,文档更新部分的内容仍然不显示的问题

V1.2 升级日志(功能增强,已于2018-04-07完成)

  • 修复图片存储路径不正确的问题
  • 正确输入文档项目标识和登录密码才能删除文档项目,以避免误删操作
  • 增加移动端搜索入口
  • 扩展采集功能,增加DIY模式,以采集提取页面的指定内容
  • 增加文档分类功能(工作量最大的一项,还新增了分类数据表。用户都不知道自己需要什么,但是却知道自己不需要什么,所以必须要有个分类来引导用户查找自己需要的资料;前端隐藏暂时没有书籍的分类)
  • sitemap的changefreq,调整为weekly
  • 项目名称,SEO时,默认加上书名号
  • 用户个人主页、收藏、关注、粉丝等
  • 友链管理

V1.1 升级日志(已于2018-03-04完成开发)

当前版本,已经适合用于正式产品。数据表结构没有变更,可以直接从v1.0升级。

FIX:

  • 增加备案链接链到工信部。
  • 文档阅读页面缺少了统计代码,已加上。
  • 解决给文档打分时分值错误的问题。
  • 一键导入和一键拉取markdown项目时,如果出现相同identity的文档,则执行更新,否则为新录入
  • 一键拉取项目,支持任何来源的zip压缩的markdown项目的拉取
  • 无刷新加载上下篇阅读文档,优化阅读体验
  • 移除SEO等Go文件中硬编码的"bookstack.cn"的域名(因为BookStack,一开始是打算自用的,所以当时写死了)
  • 登录和注册验证码优化(使用Beego自带的验证码体系:https://github.com/astaxie/beego/tree/master/utils/captcha)
  • 支持本地化存储(改动了很多地方,具体改动,请git log查看)。在app.conf中增加了store_type配置项,以扩展存储类型,目前扩展的存储类型有本地存储(local)和阿里云OSS存储(oss),更多存储类型(七牛云存储(qiniu)、腾讯云存储(cos)、百度云存储(bos)、又拍云存储(upyun))持续开发中.
  • 分页优化
  • 解决角色名称有时不显示的问题
  • 解决导入项目拉取项目,项目中的图片、文档间的链接不正确的问题,目前兼容绝大多数各种姿势的markdown项目导入和拉取
Go
1
https://gitee.com/szzxing/BookStack.git
git@gitee.com:szzxing/BookStack.git
szzxing
BookStack
BookStack
master

搜索帮助