推荐 rails-template 给大家, 极速构建一个全新又老道的 Rails 5 项目

rails, ruby

如何极速构建一个新的 rails 项目

分享一个我们 80% 团队使用的 rails 模板, 能够极速构建一个符合国情的 rails 5 项目, 快速开发.

rails-template 是一个 rails 模板, 使用方法很简单:

rails new myapp -m https://raw.github.com/80percent/rails-template/master/composer.rb

特点: 快速, 最新, 最合国情.

注意: 适合于 rails 中级以上开发者使用.

它是一个很固执的 rails 5 模板, 不接受任何选项, 直接帮你应用了目前 "最好" 的组件, 应用以下技术栈:

  • Ruby on Rails 5
  • bootstrap 3
  • font-awesome
  • figaro
  • postgresql
  • slim
  • high_voltage
  • carriewave & upyun
  • sidekiq
  • kaminari
  • mina
  • puma
  • lograge

背景

对于一个 Rails 中级选手来说, 新项目都需要调整 Rails 缺省配置的很多东西. Github 也有很多 rails-composer 项目, 但支持 rails 5 与国内本土化的还没有一个.

我在 80% 团队管理几个项目后, 意识到这些重复工作很多, 把它们抽取出来, 写成一个 rails template. 还可以帮助到其他的团队快速构建新的基于 rails 5 的应用.

rails-template 做了哪些事情?

rails-template 固执地认为, 简单大众轻量是选择组件的最重要标准. 不提供选项, 默认集成, 但易于去除, 是 rails-template 的特点.

所以 rails-template 选择了以下组件:

  • rails 5

    不仅如此, 我们还默认打开了 turbolinks5action 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 应用的基石.

请到 RubyChina 相关帖子下讨论

https://ruby-china.org/topics/30406

发表于 2016.06.30


dengzhiqiang • 2016-07-02 22:56

终于又开始更新了:)