分享一个我们 80% 团队使用的 rails 模板, 能够极速构建一个符合国情的 rails 5 项目, 快速开发.
rails-template 是一个 rails 模板, 使用方法很简单:
rails new myapp -m https://raw.github.com/80percent/rails-template/master/composer.rb
特点: 快速, 最新, 最合国情.
注意: 适合于 rails 中级以上开发者使用.
它是一个很固执的 rails 5 模板, 不接受任何选项, 直接帮你应用了目前 "最好" 的组件, 应用以下技术栈:
对于一个 Rails 中级选手来说, 新项目都需要调整 Rails 缺省配置的很多东西. Github 也有很多 rails-composer
项目, 但支持 rails 5 与国内本土化的还没有一个.
我在 80% 团队管理几个项目后, 意识到这些重复工作很多, 把它们抽取出来, 写成一个 rails template
. 还可以帮助到其他的团队快速构建新的基于 rails 5
的应用.
rails-template 固执地认为, 简单大众轻量是选择组件的最重要标准. 不提供选项, 默认集成, 但易于去除, 是 rails-template 的特点.
所以 rails-template 选择了以下组件:
rails 5
不仅如此, 我们还默认打开了 turbolinks5
与 action cable
, 充分利用 rails 5 的快的优势.
bootstrap 3
bootstrap3 依然是最流行的 UI 组件, 成熟而灵活, 值得集成. rails-template 将这一切都准备好了.
postgresql
不用多说, 现在已经成了 rails 的标配了. rails-template 还处理好了 database.yml 的配置与发布.
carriewave & upyun
图片处理几乎是 rails 应用的标配, rails-template 帮你配置好了这一切, 只需要将 application.yml 完善即可使用.
mina & plugins
mina
轻而快速, 比 capstrano
更简单快速, 适合小巧的项目, 调整完 config/deploy/production.rb
后, 一个 mina setup
即可准备好发布环境, 十分方便.
slim & coffeescript & high_voltage & kaminari
使用最简洁有效的方式组织你的 rails 代码, 是 rails-template 的目标
puma
puma 已经是 rails 5 的标配, 不仅如此, 我们还准备了更为合理的 puma.rb
配置, 热布署十分简便即可实现.
rspec
rspec, factory_girl 几乎是目前的测试项目标配, 我们直接将其配置好. 而且会自动随着其版本而更新.
rails-template
是楼主几年 rails 经验总结, 也是 80% 团队近期几个项目的实践成果, 适合于有一定经验的 rails 工程师使用. 能够让你快速创建一个漂亮的 rails 初始项目, 尤其是在国内的项目, 能够减少大量的重复劳动, 自动应用很多最佳实践.
请访问 https://github.com/80percent/rails-template 开始你的 rails5 新项目之旅.
也欢迎你为 rails-template
添瓦, 补充使用文档, 使其成为国内构建 rails
应用的基石.
https://ruby-china.org/topics/30406