Awesome Rails Gem 中文版
熟悉大牛們寫的 gem,不用重複造輪子,將更多的精力放到更有意義的事情上。
- Devise - 用於快速構建用戶功能,如:註冊,登陸,個人設置,找回密碼...
- Knock - 符合 JWT (JSON Web Token) 規範的認證 API
- Clearance - 基於郵箱密碼認證
- Devise token auth - 基於 Token 認證的 JSON API
- Pundit - Pundit 提供一系列方法來擴展 Ruby 的基本類和物件導向的設計模式,用以構建簡單、強壯、可伸縮的認證系統
- cancancan - 擴展 CanCan,可以規定某個用戶擁有哪些資源,所有權限都定義在一個單獨的地方( Ability 類)
- rolify - 角色管理
- acl9 - 基於角色的認證系統,並且提供簡潔的 DSL
- omniauth-facebook
- omniauth-google-oauth2
- omniauth-weibo-oauth2
- omniauth-twitter
- omniauth-github
- omniauth-linkedin-oauth2
- Enumerize - 適用枚舉類型的屬性,支持 i18n 、activerecord、mongoid,並可以集成到 Simple Form
- counter_culture - 計數緩存
- custom_counter_cache - 簡單的自定義技術緩存,可以在 model間共用
- Sequenced - 管理 排序性 id 的 gem
- FriendlyId - URL 友好的 ID
- AASM - 狀態機
- PaperTrail - 記錄版本、審計用的,記錄數據的變化
- paranoia - 假刪除
- Validates - 提供一系列有用的自定義驗證,包括Email, Url, Slug, Money, Ip, AssociationLength, AbsolutePath, UriComponent, Color, Ean
- globalize - 數據翻譯中的 i18n 庫
- deep_cloneable - 深度拷貝、支持關係拷貝、可選拷貝
- social_shares - 檢查 url 在社交網絡中的共享次數
- public_activity - 活動追蹤,類似 github的 Public Activity
- goldiloader - activerecode 預加載,用來減少數據庫查詢次數
- Tagging
- ActsAsTaggableOn - 打標記
- closure_tree - 多層級標記
- Spreadsheet - 讀寫 Spreadsheet 文檔
- Chartkick - 用一行 ruby 代碼創建漂亮的 js 圖表
- kaminari - 很火的分頁插件
- CKEditor - 所見即所得編輯器
- HTML::Pipeline - html 處理器
- Slack Notifier 給 slack 發通知
- Rails ERD - 生成實體關係圖
- Parity - 為 heroku 提供 shell 命令
- Airbrussh - 美化 SSHKit 和 Capistrano 的輸出內容
- Grape - 提供 REST-ful APIs
- ActiveModel::Serializers - 通過配置方便生成 JSON
- Jbuilder - 提供 DSL 來定義 JSON 結構
- rest-client - HTTP 和 REST 客戶端
- has_scope - 在 controller 中使用named scopes
- Documentation
- Grape Swagger - 為 Grape API 自動生成文檔
- Grape Swagger UI - Grape Swagger 的界面
- apiary - [收費]團隊協作工具,一起設計、原型、文檔和測試 API
- apiblueprint - API 文檔
- letter_opener - 在瀏覽器中預覽郵件,而不用真實的發送
- Carrierwave - 為 Rails, Sinatra 等框架負責文件上傳,很流行
- carrierwave_backgrounder - 分流圖片處理、並且在後臺存儲,用 Delayed Job, Resque, Sidekiq 等
- CarrierWave Crop - 裁剪上傳的圖片
- CarrierWave ImageOptimizer - 優化上傳的圖片
- remotipart - Rails jQuery 上傳控件
- MiniMagick - ImageMagick/GraphicsMagick 的 ruby 包裝
- fog - 雲服務管理
- refile - 流行的上傳庫
- Paperclip - ActiveRecord 附件管理
- Dragonfly - on-the-fly 上傳工具
- ransack - 可以創建簡單或複雜的搜索表單
- elasticsearch-rails - 集成 Elasticsearch
- Chewy - 高度集成 Elasticsearch
- Chewy_Kiqqer - [不再維護]
- pg_search - 充分利用 postgres 的優勢
- sunspot - 與 Solr 集成
- searchkick - 集成 Elasticsearch
- Whenever - 定時任務
- Resque - 基於 Redis 的後臺延時處理任務
- Rufus-Scheduler - 又一個定時任務
- Delayed Job - 基於數據庫的後臺延時處理任務
- Sidekiq - 後臺延時處理任務
- sidetiq - Sidekiq 的循環任務
- sidekiq-cron - Sidekiq 的又一個循環任務
- sidekiq-scheduler - Sidekiq 的又一個循環任務
- Sucker Punch - 後臺延時處理任務,不需要額外進程
- formtastic - 創建表單的 DSL
- Simple Form - 更加靈活的表單 DSL
- Nested Form - 級聯的表單 DSL,兼容 Simple Form
- meta-tags - SEO 相關的庫
- active_link_to - 根據當前 url 自動加 active 樣式
- cells - 把公用的 UI 寫到 view models
- i18n Country Code Select - 國家代碼列表
- Subdivision Select - 二級下拉列表,包括國家、省
- cocoon - 級聯的表單 DSL
- Config - 多環境的 YAML 配置文件
- Figaro - 針對 heroku 的配置辦法
- dotenv - 將環境變量寫到 .env 文件中
- opsworks-dotenv - 用 OpsWorks, Chef 和 Dotenv 配置環境變量
- ActiveAdmin - 後臺管理框架
- active_skin: 為 ActiveAdmin 製作的皮膚
- RailsAdmin - 後臺管理
- Typus - 管理界面,讓受信任用戶管理數據
- administrate - 靈活的後臺管理
- Impressionist - 記錄頁面訪問情況,還可以為一個訪問記錄幾次
- Ahoy - 記錄訪問情況,和事件
- Lograge - 改變 rails 默認的日誌,使變得更好
- byebug - 簡單易用,不依賴其他代碼
- pry-byebug - 集成 Pry 與 byebug
- pry-rails - 使用 pry 打開 rails console
- awesome_print - 將 ruby 對象打印的更加漂亮
- web-console - 把 console 加到 rails 中
- spring - rails 預加載
- rails-footnotes - 將調試信息顯示到腳註
- g - [不更新]
- terminal-notifier - 發送 Mac OS X 通知
- letter_opener - 在瀏覽器中預覽郵件,而不用真實的發送
- Better Errors - 替代原生的錯誤頁面,更加漂亮有用
- RailsPanel - Chrome 擴展,在瀏覽器上更好的顯示 rails 日誌
- RuboCop - 代碼分析,遵循很多代碼規範
- Rails Best Practice - 檢查代碼質量
- Metric Fu - 檢查代碼質量
- Pronto - 自動檢查變化的代碼,與 github 集成
- rspec-rails - 測試框架
- Capybara -模擬真實用戶交互 測試 Web 應用,有這些驅動:
- capybara-webkit - 使用 QtWebkit 的 webkit
- selenium-webdriver - webdriver 支持
- poltergeist - headless WebKit browser,使用 PhantomJS
- page-object - 創建靈活的頁面對象來做 web 測試
- factory_girl - 專門用來構造模擬測試數據的,完美替代Fixture的工具
- factory_girl_rails - factory_girl 集成到 Rails
- factory_factory_girl - 根據命名規則,生成 factory 文件
- Database Cleaner - 一系列清理數據庫的策略
- shoulda-matchers - 提供很多 matchers 來測試 Rails 的函數
- ResponseCodeMatchers - rspec matchers 匹配 http 返回值
- SimpleCov - 代碼測試覆蓋分析工具
- Timecop - 用來測試時間相關,可以凍結時間、時間旅行
- VCR - 記錄 http 的返回內容,並在以後的測試中快速準確的重現
- brakeman - 靜態分析工具,檢查程序的安全缺陷
- bundle-audit - 檢查 Bundle 的補丁等級,包括易受攻擊版本和不安全的 gem 源等
- Secure Headers - 自動設置安全相關的 headers
- Capistrano - 遠程服務器部署工具
- Slowpoke - Rack::Timeout 的升級版
- Rack Attack - 防止惡意攻擊、限制訪問頻率
- Responders - 一系列 responders
- production_rails - Rails Best practices,一系列 Gem
- Mina - 快速部署、服務器自動化工具
- Alaska - ExecJS 運行時保持與 nodejs 連接,加速 coffeescript 的編譯和部署
歡迎大家貢獻代碼,請先閱讀 貢獻指南 。