开源项目 想用 Rails 独立建博客吗? 试试 WBlog 作为起点吧

lyfi2003 · 2014年04月04日 · 最后由 Oxidation 回复于 2018年05月17日 · 14198 次阅读

WBlog 是一个纯 Ruby on Rails 的个人博客系统,MIT 授权。

拥有自己的一个独立博客是成为大牛的第一步。

作为 Ruby 工程师,当然不能用 wordpress 之类的 php 框架,对吧?

可以选择的独立博客就只有:jekyll 以及 octopress, 但是,这也太极客了。

另外,writings.io 真的很漂亮,但它是一个多人博客系统,修改它独立建博客工作量太大。

我只想拥有:

  1. 完整而简洁的博客功能

  2. 内容显示优雅,并且可以方便写技术文章

  3. 简单的互动分享,但不要那么多无用的功能

于是,除了找一些博客服务商“寄人篱下”外,就没有出色的满足需求的东东,就自己开发一个,当然仅仅自己用有点浪费,想看看能否能帮到有想法的动手能力强的人的忙,于是就开源出来:

WBlog: https://github.com/windy/wblog

拥有的功能简洁而完整:

  1. markdown 方式编写文章,拥有时间线,分类,标签功能,还有邮件通知,RSS 订阅等。
  2. 自带简约的评论
  3. 二维码分享与喜欢
  4. 完整的后台
  5. 响应式,可以在各种终端轻松访问

自己拥有 VPS, 想动手但又担心工作量大的人可以 fork 它,并动手改改吧。

大家可访问我的博客来看看效果: http://yafeilee.com ( 布署在 Linode 上,域名不太贵 )

截几个图:

首页:

内容页及评论:

后台

完全是兴趣所致,希望对咱 Ruby 社区有更多帮助:)

我是李亚飞,在深圳南山活动,欢迎交流!

欢迎大家 fork, 改进,修改样式,自己布署:)

采用的技术栈:

  • Ruby on Rails 4.0.4 / Ruby 2.0
  • AngularJS
  • Foundation5
  • mina
  • slim
  • Mongodb

ps: 你猜猜以 Rails 的效率,这个博客会花费多少的开发时间?( 5 天?一周?10 天?一月?)

其实和 jekyll 相比 仅仅是个 blog 的话 rails 还是太重了 开起来轻松 100M 内存木有了... jekyll 的话 nginx 也就 100k 来代理吧...

#3 楼 @zj0713001 嗯,那倒是,但自己做的博客定制性太强,还可自由展示任何酷的东西,比如我在考虑是否加入微信公众服务的 api, 自己的评论系统感觉是不一样的。

所以,成为高手的第一步,是自己开始拥有独立博客系统,尤其是 Rails 工程师:)

writings.io 改成博客的确麻烦,不过编辑器倒是容易提取出来,相比于 md 我更喜欢那个编辑器。 另外 url 那串 id 实在太长了 = =

@saiga id 有好多人反馈说不好,我感觉很酷有末有...

#5 楼 @saiga writings.io 编辑器确实酷:)

#6 楼 @lyfi2003 可以考虑用 termit 调谷歌翻译,将 title 翻译成 slug,效果不错..

你自己已经暴露你花了 5 天...

匿名 #13 2014年04月04日

#12 楼 @lyfi2003 正好 fork 了一份 从深圳 19 楼活动进去的 周六听你的演讲 比较期待 (ruby 新手路过)

飛哥,頂起啊!之前一直也想弄一個輕量的自己用,這下可以直接用你的來拆騰啦。 MongoDB 會不會有點重?不如直接 SQLite?AngularJS 還沒用過,正好學習一下:)

匿名 #15 2014年04月04日

#13 楼 @yangjie6020 19wu 哈哈 写错了 sorry #12 楼 @lyfi2003

匿名 #16 2014年04月04日

#12 楼 @lyfi2003 我按照楼主的 github 博客启动不起来 不知道是不是 mongodb 的问题 对 mongodb 不熟啊

#16 楼 @yangjie6020 看看报错原因了。配置错误可能性比较大。

#3 楼 @zj0713001 jekyll 直接放 GitHub 上就行了吧,节能环保 http://swordray.com/

哎不错,那我过两天也发个帖介绍下我的 Blog 程序

5 天……

#14 楼 @imlcl sqlite 不适合产品级的玩,mongodb 挺随意的,ruby-china 也在用,没有 migrate 挺方便的。

#18 楼 @swordray 新换的宽带 github 访问不能 云梯拨号不能 访问日本 vps 龟速 github 已放弃 而且我用自己的 pages 啊哈哈

#23 楼 @zj0713001 #18 楼 @swordray 同意,github 在国内现在越来越慢了

#23 楼 @zj0713001 GitHub 公司和个人都买了私有库账号,而且一堆开源项目,这辈子基本离不了了

#23 楼 @zj0713001 正在联系中电信高层,要求尽快修复中美海底光缆,再等等吧

@Rei 有没有看过 obtvse2?

學習拉!

Foundation5 支持 ie6 吗

#30 楼 @sundevilyang 不支持。看这里:

可以选择的独立博客就只有:jekyll 以及 octopress, 但是,这也太极客了。

还可以用middleman😄

#33 楼 @KoALa coool~ 我都没听过说,out 了,添加到 wblog 的 readme 帮大家多一个选择:) 不过静态页面的缺点就是定制性不强

#34 楼 @lyfi2003 静态页面每一页都可以完全不一样,怎么会定制性不强

Foundation 5 的 UI 看起来还是相当不错的

#35 楼 @blacktulip 不是页面内容,而是相关功能啦。比如支持二维码分享功能,如果是每次自己生成一个放上去就太麻烦了。

楼主用的 linode 是每个月$20?@lyfi2003

#21 楼 @lyfi2003 为什么 sqlite 不适合产品级的玩?其实看场合就可以了,Apple 的相片管理软件 Aperture 都是用的 sqlite,还有很多大产品也是,你可以 google 一下。

sqlite 的问题主要在读写锁,如果 blog 留言用 disqus,只有你一个人往里面写数据,再大流量也不会有问题,我就不相信你提交 blog 的那一刹那,会有个倒霉的读者觉得开页面被卡了一下。

mongodb 是挺随意的,但是太重了。

#39 楼 @Peter 写入锁性能太差了,之前做了一个 log 记录器,10 个并发写入就 10 秒以上了,而且稍复杂的场景就很容易出现数据库损坏。所以在生产环境没必要用它。disqus 的问题就是体验太差了,喧宾在夺主了。

#38 楼 @gsky 嗯,用了 1 年半了。

#40 楼 @lyfi2003 个人 blog 最重要的事就是要省钱省心,如果一上来就要个 mongodb,门槛似乎有点高了。

另外 垃圾留言 的问题真的直接增加额外程序和管理负担。disqus 的流行的另一个优点就是一个帐户,到处留言,降低用户留言门槛,不然我要你那留言还要注册,至少要填 email,有没有回复我还要专程去你那看。

如果去掉留言这一块,sqlite 只管理 blog,永远只有一个写入,这都处理不好,数据库还要损坏,sqlite 可以关门了。

我说这么多,其实就是对产品定位有些小建议。对于你来说,这个 blog 再合适不过了,有服务器,当练手,积极开源代码,这都是不错的。

如果你想要让大家都用你的产品,那就要考虑用户是什么出发点,如果我还要租个 VPS,上 1G 内存,那还不如直接用 Logdown.com,便宜又省心,有 @xdite 发 Weekly Digest 帮你推广,还可以导入导出数据。如果我不想花钱,jekyll 以及 octopress 托管到 github 或 gitcafe 都是极好的选择。大家选择你的产品,最重要的一个出发点就是在线可以登录发 blog,不像 jekyll 以及 octopress 要先生成 html。

我相信有生产服务器的人应该不会把个人 blog 也放上去,一定会新开个服务器。

高手一般自己写 blog 程序去了:https://github.com/robbin/robbin_site ,花不了几天,我看到的唯一 niche 就是,rails 初级或中级程序员想用一套不是烂大街的 php blog 程序,顺便学习一下源码,有些地方自己可以尝试性有些定制,部署 blog 不需要花大价钱

#41 楼 @Peter thx 这么认真的回复。

其实我采用 mongodb 并没有想它有多重,只是 mongoid 不用考虑 migration, 更加的便捷些。而且布署更方便。sqlite3 布署也比较麻烦。相信大家都听过 sqlite3 尽可能少用在生产环境:http://www.sqlite.org/whentouse.html

博客留言 wblog 做的还不够,至少还要添加回复 at 功能和邮件提醒 at 功能,但我认为这些已经足够,disqus 的最大的问题就是太大太不美,还有国内还太慢。

我期望 wblog 成为大家玩自己博客的开端,而不是结尾。好了,有想法可以在代码上多交流:)

:plus1:

mark,清爽,5d

匿名 #46 2014年04月08日

#43 楼 @lyfi2003 good 在过几天 我准备吧 wordpress 干掉 用这个 :-)

我已经从 Blog 退化到 evernote 上了~

#47 楼 @woody1983 最重要的是分享给别人:)

#48 楼 @lyfi2003 所以说是退化... Blog 适合写整理过后或理解和消化后的内容 note 比较适合随时记录 持续学习~ 我能分享的就是我在入门时看过的资料

静态网页还有个好处是永远不用升级... 不像动态站三天两头要打补丁

支持一下。

#30 楼 @sundevilyang 自 foundation 4 始 IE9 以下统统不支持

#31 楼 @lyfi2003 这兼容性图我没记错是 foundation 2 的吧。

不错,用了 NG,移动支持。有没有可能支持下 sqlite?

#52 楼 @tnt 嗯,弄错了,foundation 5 看上去只支持 ie9 以上。

#53 楼 @chenge 可以自己折腾下:)

弄一个,在 IE6 里玩玩看看

不分设备 直接折叠导航。。。。真的很不友好,UCD 大忌

#56 楼 @xworm 主要看你导航的目的是什么,对于博客来讲,最经常看的就是第一篇,而其他无非就是时间线,所以大屏上折叠也是没有问题的。设计,最重要的是看需求。

界面设计是头疼的事~ 不想自己开发的原因在于审美不够

匿名 #59 2014年04月19日

看看,OpenShift 能不能部署先

#18 楼 @swordray 有木有人告诉你你那个大背景很晕?

#61 楼 @WRLin 呵呵,测试一下同事做的 JavaScript 插件 https://github.com/fr0m/background.js

大爱你的博客界面,一直喜欢这种调调,我觉得晚上回去就 fork 一个

66 楼 已删除

您好 大神这个博客项目怎么配置 管理员用户名和密码呢?

vito7 回复

看一下 config/application.yml 就明白了

lyfi2003 回复

是在 ADMIN_USER 和 ADMIN_PASSWORD 自定义用户名和密码吗 然后运行 rake secret???

vito7 回复

感觉 描述的不是特别明白??求解大神

vito7 回复

看了 git 首页 解决了。。

vito7 回复

好的

挺不错的博客 回头看看

:)是我来晚了吗?博客已经进不去了

75 楼 已删除
需要 登录 后方可回复, 如果你还没有账号请 注册新账号