NuxtJS实战,一个博客系统
前言
这个项目诞生于17年5月,距今已有两年多了,在这两年期间经历了很多变更,从简单到复杂,又从复杂到简单,并且以后一直会保持这种简单状态。最近迎来了一次更新,因此特意分享一下。虽然只有我一个人使用(据我所知)。
UI变化

上面是最新的样式,是不是感觉很丑,这是我产考了很多博客主题后写的样式。这套主题是受cnblogs启发,我个人认为cnblogs在用户体验方便做的很好,虽然它的UI显得很“复古”。
功能变化
功能变化是重点,这是我基于个人写作习惯而思考出来的,因此不保证所有人都喜欢。
分类功能

分类分为公开分类和私有分类,私有分类可以记一下自己保密的东西(比如日记)。在登录状态下,作者可以看到所有分类,其他人只能看到公开分类,并且做了拦截处理,其他人打开都是404。
如果文章不选择分类,会被保存到默认分类
文章状态

一篇文章可以有3中状态,默认只在分类下展示,如果你觉得文章特别棒,可以设置为首页展示或者置顶展示。分类下的最新文章可以在侧边栏看到,因此只要有人想看,还是能看到的。这个功能类似于微博或朋友圈。

阅读体验
编辑器是基于Vue开发的,只支持markdown,虽然功能比较少,但是日常使用真的够了。并且对上传的图片进行了自动压缩处理,阅读文章时,图片也做了懒加载处理,类似于公众号中的文章阅读效果。
文章不仅可以上传图片,对于一些附件也做了处理,因此可以直接上传。比如你想把一些到盗版pdf保存到服务器,或者小视频什么的,直接上传就可以。对于附件的展示效果,后面会做更好的优化。
留言功能

文章留言功能也参考了微信,即只有作者能够回复留言,这点也是产考了很多评论设计后决定的(上个版本的传统留言方式被废弃)。当作者收到回复,或是作者回复了留言,都会有邮件通知
设置功能

对于一些可能变化的配置都可以在后台直接修改,简单方便
砍掉的功能
标签、归档、多用户写作、权限管理、github登录评论、用户管理和媒体库,这些功能在之前的版本中是有的,如果继续扩展可能就是一个cms了,我甚至还准备支持模型。现在这些都被我砍掉了,因为我开发了这些功能后,基本就没用过,还不如把一些简单的功能做好。
感谢
博客的功能做了很多取舍,也产考了很多其他博客和CMS项目。在此特别要感谢Typecho、Emlog、NoderCMS、DoraCMS、Wordpress、Ghost、cnode等,无论是功能还是主题,都多少产考了这些优秀的开源项目
以上,感谢阅读
NuxtJS实战,一个博客系统的更多相关文章
- Django完整的开发一个博客系统
今天花了一些时间搭了一个博客系统,虽然并没有相关于界面的美化,但是发布是没问题的. 开发环境 操作系统:windows 7 64位 Django: 1.96 Python:2.7.11 IDE: Py ...
- ASP.NET写的一个博客系统
由于域名闲置,正好也有服务器空间,短期内开发了一个博客系统. 大家都来谈 http://www.djdlt.com 目前是开放注册,免费发布.(限于空间有限,图片还是尽量少传些) 网站架构: ASP ...
- 动手实践记录(利用django创建一个博客系统)
1.添加一个分类的标签,和主表的关系是 外键 class Category(models.Model): """ 分类 """ name = ...
- django实战模拟博客系统
数据库代码块 from django.db import models from django.utils import timezone from django.contrib.auth.model ...
- 【blog】推荐一个博客系统后台管理模板 - pinghsu
pinghsu https://github.com/chakhsu/pinghsu
- Go搭建一个博客系统
go语言环境就不用多说了,版本肯定越高越好,这里用go1.10 先放着
- 一个 Vue + Node + MongoDB 博客系统
源码 耗时半载(半个月)的大项目终于完成了.这是一个博客系统,使用 Vue 做前端框架,Node + express 做后端,数据库使用的是 MongoDB.实现了用户注册.用户登录.博客管理(文章的 ...
- 从零开始,搭建博客系统MVC5+EF6搭建框架(1),EF Code frist、实现泛型数据仓储以及业务逻辑
前言 从上篇30岁找份程序员的工作(伪程序员的独白),文章开始,我说过我要用我自学的技术,来搭建一个博客系统,也希望大家给点意见,另外我很感谢博客园的各位朋友们,对我那篇算是自我阶段总结文章 ...
- Java丨博客系统
后台界面: 前台界面: 这是一个由我带着刚入门的几位实习生做的一个博客系统,希望给java入门的学习者一个例子,这个系统还需要完善,主体功能是实现了,还差一些细节,如果需要源码的话可以在下方给我留言! ...
随机推荐
- Locust性能测试7-分布式执行
前言 使用Locust进行性能测试时,当一台单机不足以模拟所需的用户数量的时候,可以在多台机器上分布式的执行性能测试. locust分布式启动场景有2种,一种是单机设置master和slave模式,另 ...
- jmeter APP接口压力测试
第一步:获取开发文档,了解接口地址和参数名 第二步:jmeter中添加需要测试的接口 a.设计APP的接口框架: b.http请求默认值设置如下: c.接口中应需要用到sign字段,加密字符串与时间戳 ...
- 《快活帮》第九次团队作业:【Beta】Scrum meeting 3
项目 内容 这个作业属于哪个课程 2016计算机科学与工程学院软件工程(西北师范大学) 这个作业的要求在哪里 实验十三 团队作业9:BETA冲刺与团队项目验收 团队名称 快活帮 作业学习目标 (1)掌 ...
- wp_list_categories如何去掉前面的categories
我们可以通过<?php wp_list_categories(); ?>来调用所有分类,但是在前面会出现一个categories,对强迫症患者来说就是钉子,那就把它去掉吧,顺便让自己更熟悉 ...
- vim文本编辑器——删除、复制、剪切、更改某一个字符、替换、撤销、关键字搜索
1.删除: (1)删除光标所在处的字符: 如上图所示:点击一次x键只能删除一个字符. (2)删除光标所在处后的n个字符(nx): 删除前: 输入6x: (3)删除光标所在的行(dd): 删除前: 输入 ...
- artillery强大灵活的负载测试套件
artillery是基于nodejs 编写的负载测试套件支持http&&socket.io&&websockets&&kinesis&& ...
- 0.学习springmvc补充
一.我的截图中的程序错误: 其中的路径写的是:"/user/testString" 这样写会错误当tomcat中配置的根目录为"/"或” “成功,但当配置为”x ...
- linux服务器升级python版本(python2与python3共存)
linux服务器升级python版本 ######################################## 第一步先安装sqlite-devel,因为python2也有这个,python3 ...
- JavaScript原始类型转换和进制转换
1.JavaScript转换包括:强制转换和基本转换 如: var str = 'A',num=10,nu=null,t=true,und=undefined,x; //注意:定义的x未被初始化:默 ...
- Ubuntu虚拟机下忘记密码的解决方法
由于好久没有用虚拟机里的ubuntu系统,导致忘记了密码.试了好多遍,密码都是错的,内心感到崩溃呀.选择只有两个:一个是重装系统,另一个是找回密码.自己不想重装系统只能找回密码了,在网上百度了好多,都 ...