JinHengyu.github.io --- Blog Lite 0.1.1

好看的东西看多了就会不好看, 简单的东西永远不会难看

GitHub Pages

提供静态网站托管服务的厂商还是很多的, 上次这个博客还是在阿里云的OSS上面, 虽然oss很便宜但还是没有一种"永久使用权"的归属感, 于是我遇到了Github Pages:

https://pages.github.com/

相比其他的blog平台, GitHub Pages有以下的优点:

  • HTTPS: 不用购买证书啦
  • 完全免费, repository上线1G
  • 支持git动态更新后台, 本地同步备份
  • GitHub域名服务支持CDN
  • 丰富的教程和扩展工具

这么看来GitHub Pages有3大免费: 免费仓库, 免费域名, 免费https, 再加上各种优化和保障, 同时还能给你github账号加分, 何乐而不为呢? 当然了, github pages并没有提供后台的计算服务, 所以我们只能免费搭静态博客.

Material Design Lite

Material Design Lite (MDL)是谷歌根据自己的Material Design设计风格开发的精简版Web UI框架, 虽然市面上有很多基于material的优秀的前端框架, 但是最好还是使用Google自己推出的, 一来有官方保障, 而来MDL本身很轻量, 正好符合了我们静态网站的宗旨. MDL的官网和git仓库, 以及material的官方字体图标:

https://getmdl.io/

https://github.com/google/material-design-lite

https://material.io/tools/icons/

所以我的博客也叫Blog Lite, 意指完全遵循material的精简博客

Blog Lite

当前版本0.1.1 首先声明, 这个blog适用的人群有限, 因为这博客太轻量了, 以至于除了MDL框架, 代码部分构建之后只有10+k, 因为Blog Lite有一个重要的特点是"一切都是链接", 这意味着博客中展现的一切都是分类之后第三方的地址, 不存放最终的内容. 我当初写Blog Lite的初衷是做一个"目录"来把我的许多第三方博客平台和个人网站统一起来, 一目了然, demo也可以在我的page上看到:

https://jinhengyu.github.io/

看完之后如果不够舒适...其实也可以在此之上二次开发, 不用标记版权, 因本身就是我一时兴起的作品哈哈, 更多截图请看进入demo目录

卡片布局

卡片布局(Card Layout)是经典的UI组件, material中的核心部件, card给人一种简约大方的感觉, 同时暗示了可互动性, 和有一种面向对象的feel, 所以我大胆的在新版本中给每个外链加上了卡片, 如图

可以看出其结构, 首先这个矩形是一个黄金矩形, 即宽高比例是1:0.618, /* gold = (5**0.5-1)/2 */, 标题在左下角, logo在右侧, 为了美观, 你之后在填写data.json的时候有几点需要注意:

  • 标题不能太长, 控制在2~20个字符之间
  • 背景图可压缩, 但最好以淡色为主(为了突出logo)
  • logo请裁剪成透明png, 同时宽高比尽可能接近1:1(不够的可拿透明色填充)

目录结构

  • icon/: 存放着material design的官方字体
  • mdl/: MDL框架的所有相关文件
  • img/: 存放着所有图片, 包括logo, 卡片背景和网站素材图片
  • showdown/: 一个markdown2html的插件(http://showdownjs.com/)
  • demo/: 存放了成品的截图文件
  • data.json: 核心数据文件
  • index.html: github pages仓库的默认入口
  • js.js: 主要的js文件
  • css.css: 主要的css文件
  • server.js: 测试使用的, 用于开启localhost
  • LICENSE: Apache通行证
  • README.md: 这个文件
  • README.html: README.md的HTML版本

data.json

data.json中存放着所有的数据, 也就是所有的url, 源码拿到手之后修改下这个文件之后就能上手用了, 为了方便我使用js的形式描述data.json:

// data.json是一个列表对象, 其中每一个元素是一个album, 代表一个大类包含许多的子链接
[{
// album的优先级, Number类型, 较大的排在菜单侧边栏的上面
priority: Number,
// album的图标
icon: String
// album的名字(短文本)
name: String,
// album的描述(长文本)
about: String,
// album中每一个卡片(外链)的背景图片url, 建议存放在/img/back/目录中
img: String,
// 存放该类别中所有的链接信息(卡片)
list:[
// link的名字(短文本)
name: String,
// link的描述(长文本)
about: String,
// link的地址
url: String,
// link的图标图片url, 建议存放在/img/logo/目录中, 最好做成裁剪后的透明png, 因为要覆盖在背景图片之上
logo: String
]
// other album...
},{},{}]

支持

我的开源主页Blog Lite配置指南的更多相关文章

  1. JBoss7配置指南

    JBoss7配置指南   1.    jboss各主要版本特性... 3 1.1.     jboss4特性... 3 1.2.     jboss5特性... 5 1.3.     jboss6特性 ...

  2. 大数据应用日志采集之Scribe 安装配置指南

    大数据应用日志采集之Scribe 安装配置指南 大数据应用日志采集之Scribe 安装配置指南 1.概述 Scribe是Facebook开源的日志收集系统,在Facebook内部已经得到大量的应用.它 ...

  3. DNS和Bind配置指南

    /////////////////////////////目录//////////////////////////////////////一.DNS原理相关二.使用bind搭建最简单的DNS服务器三. ...

  4. Windows下OpenFOAM开发及使用环境配置指南 (1)【转载】

    转载自:http://openfoam.blog.sohu.com/158614863.html *************************************************** ...

  5. Visual Studio Code 配置指南

    Visual Studio Code (简称 VS Code)是由微软研发的一款免费.开源的跨平台文本(代码)编辑器.在我看来它是「一款完美的编辑器」. 本文是有关 VS Code 的特性介绍与配置指 ...

  6. 【转】Syncthing – 数据同步利器---自己的网盘,详细安装配置指南,内网使用,发现服务器配置

    Syncthing – 数据同步利器---自己的网盘,详细安装配置指南,内网使用,发现服务器配置 原贴:https://www.cnblogs.com/jackadam/p/8568833.html ...

  7. 高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南

    原文:http://my.oschina.net/wstone/blog/365010#OSC_h3_13 (WJW)高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南 [X] ...

  8. (转)Linux-HA开源软件Heartbeat(配置篇)

    原文:http://ixdba.blog.51cto.com/2895551/548625 http://gzsamlee.blog.51cto.com/9976612/1828870 Linux-H ...

  9. Linux下安装mantis配置指南【转】

    转自:http://blog.csdn.net/xabc3000/article/details/6858229 目录(?)[-] Linux下安装mantis配置指南 配置Linux下的Apache ...

随机推荐

  1. eclipse容易卡死或者较慢的解决方案

    http://blog.sina.com.cn/s/blog_5c6c4dc90100lg8n.html 问题: Eclipse经常卡住或Building workspace等待,感觉很不爽,很多朋友 ...

  2. SYS_R12 MOAC多组织底层技术实现技术分析(Oracle VPD) (案例)

    2014-05-30 Created By BaoXinjian

  3. Python sqrt() 函数

    描述 sqrt() 方法返回数字x的平方根. 语法 以下是 sqrt() 方法的语法: import math math.sqrt( x ) 注意:sqrt()是不能直接访问的,需要导入 math 模 ...

  4. C++ main函数命令行参数使用

    1. C/C++语言中的main函数,经常带有参数argc,argv,如下: int main(int argc, char** argv) int main(int argc, char* argv ...

  5. JEECG中datagrid方法自定义查询条件

    自定义加添加查询条件的用法: CriteriaQuery cq = new CriteriaQuery(EquipmentEntity.class, dataGrid); //查询条件组装器 org. ...

  6. DOA——MUSIC算法

    一.均匀圆阵(UCA, Uniform Circular Array)的MUSIC算法 假设一个半径为R的M元均匀圆阵的所有阵元均位于坐标系X-Y平面内,第k-1个阵元坐标为,第i个窄带信号波长为,来 ...

  7. ios网络层优化深入浅出

    网络层是iOS开发必须掌握的部分,苹果已经将网络请求封装得非常易用了,看看NSURLRequest和NSURLConnection的文档,你就知道怎么用了,这里我就不细讲了.本文主要讲网络层的调用逻辑 ...

  8. JavaScript:RegExp对象的使用(整理)

    1. RegExp是什么? 对象表示正则表达式,它是对字符串执行模式匹配的强大工具. 2. 如何创建RegExp? 2.1 直接量语法 /pattern/attributes 2.2 创建RegExp ...

  9. HDU 2444 The Accomodation of Students二分图判定和匈牙利算法

    本题就是先推断能否够组成二分图,然后用匈牙利算法求出最大匹配. 究竟怎样学习一种新算法呢? 我也不知道什么方法是最佳的了,由于看书本和大牛们写的匈牙利算法具体分析,看了几乎相同两个小时没看懂,最后自己 ...

  10. C++第12周(春)项目2 - "双肩挑"教师

    课程首页在:http://blog.csdn.net/sxhelijian/article/details/11890759,内有完整教学方案及资源链接 [项目2 - 教师兼干部类](第11章习题9) ...