Ma63d / kov-blog

A blog platform built with koa,vue and mongoose. 使用 koa ,vue 和 mongo 搭建的博客页面和支持markdown语法的博客编写平台,自动保存草稿。博客地址:https://chuckliu.me
MIT License
636 stars 103 forks source link
highlight koa mongo mongoose simplemde vue vue-router vuex webpack

kov-blog

v2版本正在开发当中...

a blog platform built with vue, koa and mongo. 使用vue,koa和mongo搭建的博客页面和markdown语法的博客编写平台,自动保存草稿。

博客预览地址:https://chuckliu.me 博客 后台

kov-blog 使用了vuevuexkoamongo等框架和技术。前后端分离,restful架构。项目主要包含三个文件夹和项目:

使用了许多es6新特性,请使用6.0以上版本的node!

使用之前请先确保已经安装mongo!

如果要使用评论系统,请先注册多说,修改/client/src/Blog.vue中的多说二级域名为您自己的多说二级域名

server

基于restful,nodejs的话采用koa框架(koa 1),数据库用了mongo。登录这块的话用了jwt.

生产环境下可在可在server/configs目录下增加private.js文件,增加私有配置.

因为使用了许多es6/7 新语法,所以请使用6.x版本node

npm command

# install dependencies
npm install

# 开发
# 带热重载,跑在本地3000端口
npm run dev-server

# 部署
npm run build-server

client

博客呈现页面,基于vue(1.0),前后端通信用的fetch,评论系统用的是多说,界面模仿了vue博客,大量使用了其样式效果,还有很多要完善的地方。

技术栈

  1. Vue && vue-router
  2. fetch
  3. stylus
  4. marked && highlight

npm command

# install dependencies
npm install

# 开发,跑在本地8080端口
npm run dev-client

# 打包
npm run build-client

admin

初始用户名:admin,初始密码:password

博客管理系统,也是前后端完全分离的。功能上类似于印象笔记,实时保存你的文章,当你觉得写好了之后可以发布文章,每次发布都会把文章同步更新到博客上,这样在client端就能看到。采用markdown语法,编辑器采用的是SimpleMDE,支持大量快捷键。

快捷键 Action
Cmd-' "toggleBlockquote"
Cmd-B "toggleBold"
Cmd-E "cleanBlock"
Cmd-H "toggleHeadingSmaller"
Cmd-I "toggleItalic"
Cmd-K "drawLink"
Cmd-L "toggleUnorderedList"
Cmd-P "togglePreview"
Cmd-Alt-C "toggleCodeBlock"
Cmd-Alt-I "drawImage"
Cmd-Alt-L "toggleOrderedList"
Shift-Cmd-H "toggleHeadingBigger"
F9 "toggleSideBySide"
F11 "toggleFullScreen"

技术栈

  1. Vue && vuex && vue-router
  2. fetch
  3. stylus
  4. SimpleMDE && marked && highlight

npm command

# install dependencies
npm install

# 开发,跑在本地8081端口
npm run dev-admin

# 打包
npm run build-admin