很高兴的宣布,Geeknote 已经开源,仓库位于 https://github.com/chloerei/geeknote 。
为什么开源?
开源的想法由来已久,其中一个原因是开源很酷。我管理的另一个社区 Ruby China 是开源的,Geeknote 借鉴的网站之一 dev.to 是开源的,所以我也想把 Geeknote 开源。
另一个原因是我想给 Ruby on Rails 社区提供一个新手友好的开源项目。Rails 的开源项目不少,知名的例如 Discourse、GitLab、Chatwoot 等。但这些项目由于历史积累和业务复杂度,其实不适合新手阅读。
什么是新手友好?
Geeknote 是新手友好的,有两个原因。
首先,Geeknote 的业务不复杂。作为一个博客社区,核心模型就是用户-文章-评论,理解起来比较简单。但因为 Geeknote 已经运营了四年,有一些技术债,所以也不是周末项目那么简单,对于现实项目也有参考价值。
其次,Geeknote 尽量使用 Rails 默认栈的技术。例如,使用 Hotwire 而不是前后端分离,使用 Minitest 而不是 Rspec,使用 Rails auth generator 而不是 devise。我优先选择无聊的技术,这样更容易维护,有更多时间花在产品上。
如何使用?
要启动开发环境,只需要用 vscode 打开项目目录,会自动提示启动 devcontainer 环境。
要部署到服务器,可以参考项目 Wiki。目前文档比较简陋,后面我会根据需要更新。
项目基于 MIT License 开源,你可以用于搭建自己的社区,或者 Fork 添加自己的功能。如果发现 Bug,可以打开 Issue 或者 Pull Request;如果想要贡献新功能,建议开发前先到 Discussion 发帖,Geeknote 接受新功能倾向于保守。
有其他疑问欢迎评论留言。Just for fun!
多谢反馈。目前是搜索引擎友好的,将来也会是,封闭是我不愿意在某些用户量很大的平台写文章的原因。
站内推荐是一项激励写作的措施,因为文章发布了多少都会希望被人看到,我希望没有粉丝但是质量高的文章也能获得曝光。
前段时间冷落了网站建设,接下来会继续投入。
订阅功能或者rss聚合可以有。也可以没有。现代人的注意力太稀缺了。尽量不要让他并不需要的信息去骚扰他。
关键是这个站要能被搜索引擎搜到,这样写的东西才能被看到。关不关注其实不大要紧的。关注了反而有催更的压力,不关注,反而长尾效应,需者自取。当然有互动是另外一回事。还有有一些文章是系列,当然这个也可以放后面。只要能被检索到就解决一大半问题了。另外就是对看文章的人尽量友好点,免登录,免广告这是基本,如果搜索功能强点就更好了。链接功能可以有,推荐功能就算了,那个太扰民了。