写了一个极简 Github Page,黑科技,不用第三方插件支持评论.

2016-10-14 00:55:11 +08:00
 a302800411

TinyBlog 有什么特性

  1. 完全静态,以至于没有任何生成程序
  2. 支持 Markdown 常用语法
  3. 支持 Github 用户添加评论

为什么要写 TinyBlog

有时候只想简单的写一篇文章,WordPress 毫无疑问过于臃肿,Jekyll 需要安装,而我想要一种更简单的更新博客方式,受到开源项目Simple的启发,我用几个晚上的时间写了一个极简的静态博客.

每次写文章只有一个步骤,push 写好的 md 文章到./blog目录下, that's all .

Demo 地址

http://yanghanqing.github.io/ 推荐电脑访问,暂时没做响应式布局

TinyBlog 教程

  1. TinyBlog 的 Github 主页fork 一份到你的仓库,更改项目名称为your_name.github.io,几分钟后 Github 会自动为你开通your_name.github.io的个人主页

  2. 修改aboutme.md文件作为你的个人介绍,为了更快的加载速度,也可以选择写死在index.html

  3. 写好 markdown 文件后,保存到./blog目录下,push 即可

评论功能

评论这个功能我是取巧了,利用 Github API 在项目 issues 下新建 comment 来存储,实现了原本需要第三方插件才能完成的功能.

许可

MIT

练手的作品~分享给那些和我一样,偶尔只想简单的更新一篇博客的人~

11848 次点击
所在节点    分享创造
70 条回复
a302800411
2016-10-14 15:02:37 +08:00
@luili coding.net 的 api 我简单看了一下,貌似只提供 OAUTH 授权哎 不是很好迁移
a302800411
2016-10-14 15:07:30 +08:00
@SilentDepth 你看我现在的步骤是写好文章 push 就好了.
如果我想在 push 的同时新建 issue 的话,issue 的内容不重要,关键是新建这个步骤.
用 git 命令是肯定不行了,只能用官网的 api,
那最好的办法就是写好文章后执行运行一条 python 脚本来实现.
因为会用 git 的都是程序员,Mac 和 Linux 都自带 Python,Win 的话麻烦一些
zwhu
2016-10-14 15:07:43 +08:00
如果是做前端的话,还是早点离开合肥吧,不适合个人发展
SilentDepth
2016-10-14 15:21:30 +08:00
@a302800411
哦,刚才没细想这事儿。话说 commit 操作有 fix issue 的 hook ,但没有 new issue 的 hook ,想来 GitHub 也没想过 Issues 系统会被这么玩儿吧 2333
不了解 GitHub API 。 Windows 集成的资源少一些,打个运行时进去呢?好像又太大了……虽说下一个 Python 并不费事,但是好像越来越多的非程序员(至少不是职业程序员)也选择了在 GitHub Pages 建博客呢。当然我这有点吹毛求疵的意味啦。看好你的项目~
a302800411
2016-10-14 15:22:26 +08:00
@zwhu 我在合肥上学...应届生...这是第一次写前端...主力做安卓的...目标是全栈...
a302800411
2016-10-14 15:24:47 +08:00
@SilentDepth 非程序员...我直接写个 chrome 扩展..还支持 Markdown 实时预览...更简单..不过这和其它静态博客生成工具就没差了....别人在电脑上用 npm 装...我在 chrome 商店装...
wuling
2016-10-14 15:38:50 +08:00
楼主把 github 的 README 文件重命名为 README.md 吧,写成 markdown 又不存成.md 文件, github 不会解析的看着好难受
a302800411
2016-10-14 15:50:03 +08:00
@wuling 好啦..thx 提醒
zwhu
2016-10-14 16:07:20 +08:00
@a302800411

我之前也在合肥上学,还好离开的早,合肥基本没什么太好的前端发展环境
cosven
2016-10-14 16:16:44 +08:00
楼主要不要考虑直接 Issue 做成 Github Pages 。
a302800411
2016-10-14 16:17:59 +08:00
@cosven 前面有人提了....可惜 Issue 不支持 push,而且不能版本控制
a570295535
2016-10-14 16:23:02 +08:00
期待成熟的正式版发布。。。
tomato3
2016-10-14 17:09:38 +08:00
黑科技
viko16
2016-10-14 17:26:02 +08:00
doubleflower
2016-10-14 17:54:30 +08:00
评论需要用户名密码这点不合理,谁会为加个评论把自已的用户密码交出来?
yiqiok
2016-10-14 19:01:51 +08:00
cool
jswh
2016-10-14 23:04:03 +08:00
我做过类似的东西, https://github.com/jswh/MDBlog ,但是后来烂尾了,因为始终没办法获取文档的创建时间,没法做排序,就懒得做了。
jswh
2016-10-14 23:10:18 +08:00
@a302800411 这样搞的话最后还是需要用到别的语言,那纯静态的 blog 的意义就少了一大半。我现在用 pelican ,自己写了两个脚本一个 setup 只在初始化的时候用,一个 publish ,在每次写完文章之后用。把 publish 绑定到提交动作那整个流程就一样了,唯一的区别只是 fork 完 clone 到本地之后,要 setup 一次,同样需要 python 环境。

https://github.com/jswh/jswh.github.io
readme 还是以前 setup 要手动安装的时候
a302800411
2016-10-14 23:10:41 +08:00
@jswh 现在排序有两个思路,要么是上传的时候,文件命名为 "001#title.md",
要么通过脚本在上传同时创建一个 issue,issue 可以获取时间.
a302800411
2016-10-14 23:14:02 +08:00
@jswh 不用其他语言,纯静态也有办法,写一个 editor.html ,所有都可以用 js 来完成,提交的时候需要输入帐号密码

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/312661

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX