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入门的学习者一个例子,这个系统还需要完善,主体功能是实现了,还差一些细节,如果需要源码的话可以在下方给我留言! ...
随机推荐
- Mybatis框架进行批量导入和删除有三种方式
首先创建一个数据库 CREATE TABLE user ( id varchar(32) CHARACTER SET utf8 NOT NULL, name varchar(50) CHARA ...
- 王天悦 201671030121 实验十四 团队项目评审&课程学习总结
项目 内容 课程名称 2016级计算机科学与工程学院软件工程(西北师范大学) 作业要求 实验十四 团队项目评审&课程学习总结 课程学习目标 (1)掌握软件项目评审会流程,(2)反思总结课程学习 ...
- spring boot cli 知识点
spring boot cli 版本列表: https://repo.spring.io/snapshot/org/springframework/boot/spring-boot-cli/ spri ...
- 20180414模拟赛T2——拼图
拼图 源程序名 puzzling.??? (PAS,BAS,C,CPP) 可执行文件名 puzzling.EXE 输入文件名 puzzling.IN 输出文件名 puzzling.OUT 时间限制 1 ...
- PHP 验证Email的函数
<?php function validateEmail($email) { $isValid = true; $atIndex = strrpos($email, " ...
- linux内核中的文件描述符(二)--socket和文件描述符
http://blog.csdn.net/ce123_zhouwei/article/details/8459730 Linux内核中的文件描述符(二)--socket和文件描述符 Kernel ve ...
- Squeeze Excitation Module 对网络的改进分析
Squeeze-and-Excitation Networks SE-net 来自于Momenta 孙刚团队 SE的设计思路: 从卷积操作的实际作用来考虑,conv 把局部空间信息和通道信息组合起来, ...
- matlab基础向7-8:画图
1.画直角坐标系的二维图 画直线: x1=[1 2 3]; y1=[4 5 6]; plot(x1,y1);%斜率为1的直线,穿过(1,4)(2,5)(3,6) 画抛物线y=x*x(-3<=x& ...
- public private protected 修饰符整理
1.public定义的类或方法:任何类的实例都可以访问 2.private定义的属性和方法:只能该类内部使用:如果子类要访问父类的private属性:必须实现__set()和__get()方法: 3. ...
- HHHOJ #153. 「NOI模拟 #2」Kotomi
抽代的成分远远大于OI的成分 首先把一个点定为原点,然后我们发现如果我们不旋转此时答案就是所有位置的\(\gcd\) 如果要选择怎么办,我们考虑把我们选定的网格边连同方向和大小看做单位向量\(\vec ...