beibq是基于flask开发类似gitbook的知识管理网站。
因为很多博客系统都是以文章的形式为主;如果记录的文章变多了,还需要进行分类,而且查找以前写过的某篇文章会比较麻烦。
beibq是用写书的方式来写博客,因为书籍本身就具有分类功能,就算记录的内容变多了也不觉得乱,而且在阅读时通过点击书籍目录很方便的切换到其他章节。
安装配置
搭建好网站后,用浏览器访问,会出现配置界面
beibq的编辑器支持Markdown,Markdown是一个标记语言,只需要几个简单的标记符号就能转化成丰富的HTML格式,特别适合写博客。关于Markdown的具体介绍:Markdown 语法说明
beibq的编辑器界面简洁、操作简单,能够通过工具栏或快捷键方式输入Markdown标记符号,有效的提高写作效率;编辑器的目录区支持章节拖拉,可以调整章节顺序。
编辑器例子:在线写书
beibq的编辑器是纯js实现,我单独将它开源出来:bookeditor
写好书籍后点击发布,就能在首页上看到最新书籍动态
beibq的界面简洁、美观、易用。阅读博客时,就像看书一样,界面包含书籍目录;这样只要点击目录的某个章节就能很方便切换到其他章节。
为了提高切换章节效率,当点击目录中某个章节,通过ajax异步请求章节内容,这样可以不仅提高页面刷新速度而且具有很好的阅读体验;
其实使用ajax异步请求章节会出现一个问题,当网络延迟高,用户短时间内点击多个章节,会导致页面显示混乱;为了解决这个问题,我设计一个队列,将用户点击章节时将该事件缓存到队列中,如果短时间内接收多个点击事件,我其实只请求队列中最后的一个事件。
beibq还可以自动适配移动端界面,用户可以在移动设备上阅读。
beibq使用的数据库是mysql,安装前需要先安装mysql
我使用的是centos,安装方法可以参考该文档:Installing MySQL on Linux Using the MySQL Yum Repository
pip install -r requirements.txt
python manage.py runserver -h 0.0.0.0
在浏览器中输入http://127.0.0.1:5000
第一次访问会跳转到配置界面,根据指示配置站点信息后就能使用beibq
這份文件可以幫助你開始使用 GitBook API,幾乎涵蓋了所有你需要知道的,從認證、處理,到與其他服務的整合。(嗯,許多功能仍在開發中...) 英文版倉儲在: GitHub,請自由複製使用,並協助我們改善。 中文翻譯版倉儲則在: GitHub。 代碼庫 GitBook 提供了兩種開發語言的代碼庫: Name Language node-gitbook-api Node.js go-gitboo
本文向大家介绍iOS项目开发--实现类似淘宝详情页面,包括了iOS项目开发--实现类似淘宝详情页面的使用技巧和注意事项,需要的朋友参考一下 前段时间公司在研发一个电商项目,趁现在有时间把其中的知识点整理整理。 项目的商品详情页面当时是仿制淘宝的,用到的第三方库是MJRefresh,上拉操作和下拉操作的刷新效果是把MJRefresh刷新效果从新建个分类封装了一下,感谢杰哥!!! 基本思路: 1、设置
本文向大家介绍iOS开发项目- 基于WebSocket的聊天通讯(2),包括了iOS开发项目- 基于WebSocket的聊天通讯(2)的使用技巧和注意事项,需要的朋友参考一下 公司项目需要开发一个类似QQ、微信的即时IM聊天功能,做到实时监控消息,需要用的技术是websocket,今天整理下语言聊天这块;其实语言聊天,包含两部分,录音和音乐播放,关于简单语言聊天功能如下图: 录音 在AVFound
本文向大家介绍Android开发之关于项目,包括了Android开发之关于项目的使用技巧和注意事项,需要的朋友参考一下 本系列文章会根据项目的进度进行相关介绍,其会分为多个模块,每个模块互不依赖,各个模块都是单独的学习内容,如sqlite学习模块,contacts联系人模块等。 新建项目 相信大部分童鞋都可以自定义项目了,那么在此,我简单介绍下android studio新建项目的过程。 最终,a
本文向大家介绍基于 Docker 开发 NodeJS 应用,包括了基于 Docker 开发 NodeJS 应用的使用技巧和注意事项,需要的朋友参考一下 有关这个 Node 应用 此应用包含一个 package.json, server.js 以及一个 .gitignore 文件, 它们简单到可以信手拈来. .gitignore package.json server.js server.js 会拉
Flask,一个微框架,通常需要一些重复的步骤来让第三方库工作。因为在很多时候, 这些步骤可以被分离出,来支持多个项目,就有了 Flask Extension Registry 。 如果你想要为还没有的功能创建你自己的 Flask 扩展,这份扩展开发指南会帮助你 在很短的时间内让你的应用跑起来并且感到像用户一样期待你的扩展运转。 剖析扩展 所有的扩展都位于一个叫做 flask_something