Score
0
Watch 286 Star 1.5K Fork 544

进击的皇虫 / BookStackGoApache-2.0

Create your Gitee Account
Explore and code with more than 5 million developers,Free private repositories !:)
Sign up
Clone or download
change.md 18.02 KB
Copy Edit Web IDE Raw Blame History
进击的皇虫 authored 2020-05-10 10:06 . 固定首页分类索引

采集内容,图片不正确

开发日志

TODO

  • a 标签中的英文括号统一转成中文括号
  • 导出markdown
  • 直接访问编辑页面,登录的cookie过去无法编辑文档问题
  • 书籍发布队列
  • 电子书下载页面,扩展站点页面
  • 电子书检验,不存在的电子书,重新生成
  • 增加博客(文章)系统功能
  • 增加实体书功能(广告)
  • 增加网络课程推广功能(广告)
  • 增加 wiki 功能
  • ElasticSearch支持搜索博客、wiki和实体书
  • 增加程序员工具箱功能(长期工作)
  • 手机APP开发升级
  • iPad平板用户注册/登录没有顺利跳转的问题处理
  • 生成手机APP分享海报(类似微信小程序上的分享)
  • 支持电子书检测是否存在以及电子书重新生成
  • 增加电子书功能(支持外链电子书)
    • 电子书扫描功能
  • 增加视频课程功能
  • 书籍图片缺失处理功能
  • 找出注明来源和赞助的书籍
  • 电子书重新生成的功能
  • 增加文章(博客)功能,博主不需要再书栈网写博客,只需要提交自己博客网站,书栈网根据网址去采集。 (内容采集的话,需要博客遵循CC-BY-NC的知识共享协议,书栈网在文章底部和APP等,显示打赏或者赞助二维码)。如需提醒有新的收录的话,再重复提交一下自己的博客就好了
  • 友链交换入口
  • 程序员网址导航

v2.8 升级日志

  • 优化内容阅读体验:调整文字行高、章内目录以及优化内容图片预览
  • 优化html2md模块
  • 修复上一版本数据库时间字段没有默认值导致的错误#103
  • 优化阅读时长统计,减少统计误差
  • 升级MySQL、阿里云OSS等相关依赖库
  • 修正工信部备案链接地址(工信部更换域名了)
  • 修复runtime: goroutine stack exceeds 1000000000-byte limit问题,提升程序稳定性。(由 getSelectedNode造成)
  • 优化大markdown文件拆分
  • 固定首页分类索引

v2.7 升级日志

  • 404 优化:如果是书籍的文档不存在,则提示回到书籍页而不是首页
  • 修复API横幅链接不正确的问题
  • 增加阅读历史的api,以便APP端显示最近阅读的书籍,哪怕用户未收藏
  • 书籍收藏优化,显示收藏的书籍分类,以便更快找到收藏的书籍
  • 发现页面的分类下方显示分类介绍,以达到简单小科普的效果
  • 内容阅读页面优化:支持图片放大,优化章内目录显示
  • 最新推荐的书籍,按照最后更新时间倒序排序
  • 调整小程序码显示

v2.6 升级日志

  • HTML转markdown
  • Word文档导入(进支持.docx格式的Word文档,其他格式的Word文档先转换一下)
  • 发现页面SEO优化
  • 解决匿名访问时无法渲染文档的问题
  • 章节目录收起与展开
  • 本月累计签到榜单和上月累计签到榜单
  • 内容阅读页面样式代码块优化
  • 书架和收藏,显示收藏的书籍的分类

v2.5 升级日志

  • 适配手机APP BookChatApp 相关API接口调整
  • $auto-title自动提取内容标题
  • 增加是否开放注册的功能
  • 增加是否允许游客访问的功能(禁止游客访问的话,只能登录)
  • 增加首页是否显示分类索引功能,以便分类太多
  • 内容采集转发
  • markdown项目导入的时候,//开头的链接或者非.md.markdown结尾的链接,不转成$开头的相对链接
  • 删除用户的时候,提示并确认删除,避免误删
  • Github oauth登录调整(Please use the Authorization HTTP header instead as using the access_token query parameter is deprecated.)

v2.4 升级日志

  • 个人主页调整
  • 用户每日签到记录与统计及其缓存
  • 用户每日阅读时长记录与统计及其缓存
  • 书籍每日收藏量记录与统计及其缓存
  • 书籍每日浏览量记录与统计及其缓存
  • 排行榜单
  • APP 的 API 接口
    • 签到接口
    • 签到状态查询
    • 榜单接口
    • 个人各项数据信息接口

v2.3 升级日志

  • 不启用elasticsearch,也能启用相关书籍的功能
  • 管理后台支持标签管理(搜索、删除、新增)
  • 支持自动创建数据库,默认创建uft8mb4的数据库,避免用户创建了非utf8的数据库导致程序部署失败
  • 增加显示我的收藏入口
  • 增加广告投放功能
  • 移除我的二维码(这个功能意义不大)
  • 修复本地存储时,重新生成新电子书,旧电子书没有删除的问题
  • 生成电子书封面
  • 优化HTML转markdown功能
  • 电子书生成相关模板存放在 views/ebook 目录下
    • statement.html为生成致谢内容的电子书模板,可移除和修改
    • cover.html为自定义的电子书封面模板

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项目导入和拉取

Comment ( 1 )

Sign in for post a comment