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入门的学习者一个例子,这个系统还需要完善,主体功能是实现了,还差一些细节,如果需要源码的话可以在下方给我留言! ...
随机推荐
- Mysql 日常
Mysql 日常总结 做报表的时候经常会使用 if 来帮助统计 select count(if(key=1,1,NULL)) from atable where ... 当然,也支持选择 select ...
- crontab每小时运行一次(转)
https://blog.csdn.net/liu0808/article/details/80668705 先给出crontab的语法格式 对于网上很多给出的每小时定时任务写法,可以说绝大多数都是错 ...
- springBoot 日志中关于profiles设置的源码解读
在启动SpringBoot应用是看到到如下日志,于是出于好奇查看了下源代码: 首先,StartpInfoLogger类,采用jcl-over-slf4j[即Apache Common Log]中的Lo ...
- windows强制删除文件和文件夹
包括只读类型 Deletes one or more files. DEL [/P] [/F] [/S] [/Q] [/A[[:]attributes]] namesERASE [/P] [/F] [ ...
- base64编码与解码
var base64EncodeChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" ...
- 无向图边双联通分量 tarjan 模板
#include <bits/stdc++.h> using namespace std; const int MAXN = 100005; const int MAXM = 500005 ...
- windows 命令
1.查看端口占用: netstat -ano|findstr 8080 2.查看网络端口:ipconfig/all
- 爬虫高性能asyncio+ahttpio
async实现协程,异步编程 我们都知道,现在的服务器开发对于IO调度的优先级控制权已经不再依靠系统,都希望采用协程的方式实现高效的并发任务,如js.lua等在异步协程方面都做的很强大. python ...
- SDL
SDL介绍 SDL(Simple DirectMedia Layer)是一套开放源代码的跨平台多媒体开发库,使用C语言写成.SDL提供了数种控制图像.声音.输出入的函数,让开发者只要用相同或是相似的代 ...
- java8 新特性parallelStream 修改默认多线程数量
parallelStream默认使用了fork-join框架,其默认线程数是CPU核心数. 通过测试实践,发现有两种方法来修改默认的多线程数量: 1.全局设置 在运行代码之前,加入如下代码: Syst ...