trunghieu/rog-frame

There is no license information available for the latest version (dev-master) of this package.

Rog PHP Framework

dev-master 2019-10-08 13:48 UTC

This package is not auto-updated.

Last update: 2025-06-16 15:34:11 UTC


README

Some guide to choosing the best Gems for your Ruby project

  • Where do we go to find the Gem?
    • The Ruby Toolbox: That is a great way to get a list of the gems in a category(along with: how many people use it?, how often is it updated?)
  • The stats:
    • Numbers of download
    • Last release
    • Latest Commit
  • Code and Document:
    • Doc quality?(1-5, 5 best)
    • Test Quality?(1-5, 5 best)
    • Issues/PRs
    • Actively Maintained?
    • Recommended by others?
    • Good code?

Recommended Ruby Gems when start new project

  • Authentication

    • Devise : This is a flexible authentication solution for Rails, easy to setup, easy to override and extend
  • Authorization

    • Cancan: Cancan is an authorization library for Ruby on Rails. Easy way to define and access user permission, it’s also give us simple way to authorize controller action and handle authorization exception.
    • Rolify: Role management Library with resource scoping.
  • Omniauth

  • API

    • Grape: Microframework to create REST-full APIs in Ruby
    • ActiveModel::Serializers: Serializer brings convention over configuration to your JSON generation.
  • File uploading

    • Carrierwave: This gem provides a simple and extremely flexible way to upload files from Ruby applications
    • PaperClip: Paperclip is intended as an easy file attachment library for ActiveRecord
    • aws-sdk: Combined with PaperClip or Carrierway will allow you to upload assets such as images through your application to AWS S3
  • Mailer

    • letter-opener: Preview email in the default browser instead of sending it.
    • mailcatcher: MailCatcher runs a simple SMTP server which catches any message sent to it to display in a web interface
  • Searching

    • Ransack: Ransack enables the creation of both simple and advanced search forms for your Ruby on Rails application
    • Elasticsearch-rails: Elasticsearch integrations for ActiveModel/Record and Ruby on Rails.
    • Chewy: High-level Elasticsearch Ruby framework based on the official elasticsearch-ruby client
    • SearchKick: Intelligent search made easy with Rails and Elasticsearch.
  • Admin panel

    • Active Admin: A Ruby on Rails framework for creating elegant backends for website administration
    • Rails Admin: A Rails engine that provides an easy-to-use interface for managing your data.
  • Testing

    • rspec-rails: A testing framework for Rails 3.x, 4.x and 5.0.
    • factory_factory_girl: A really useful gem that lets us generate test data more efficiently
    • simplecov: SimpleCov is a code coverage analysis tool for Ruby
    • vcr: Record your test suite's HTTP interactions and replay them during future test runs for fast, deterministic, accurate tests.
    • capybara: Capybara helps you test web applications by simulating how a real user would interact with your app
  • Schedule

    • Whenever: Whenever is a Ruby gem that provides a clear syntax for writing and deploying cron jobs.
    • Sidekiq: Sidekiq uses threads to handle many jobs at the same time in the same process. It does not require Rails but will integrate tightly with Rails to make background processing dead simple.
    • Delayed Job: Database based asynchronous priority queue system.
  • View Helper

    • Simple Form: A flexible as possible while helping you with powerful components to create your forms
    • Cocoon: Dynamic nested form
  • Environments Variables

    • Dotenv: Allow set environment variable in .env file and loading it into ENV
    • Figaro: Configuration values often include sensitive information. Figaro strives to be secure by default by encouraging a convention that keeps configuration out of Git.
  • Deployment

  • Debug

    • pry-rails: Avoid repeating yourself, use pry-rails instead of copying the initializer to every rails project. This is a small gem which causes rails console to open pry. It therefore depends on pry.
    • byebug: Byebug is a simple to use, feature rich debugger for Ruby. It uses the TracePoint API for execution control and the Debug Inspector API for call stack navigation
  • Application performance

    • Bullet: The Bullet gem is designed to help you increase your application's performance by reducing the number of queries
    • Rack mini profiler: Middleware that displays speed badge for every html page. Designed to work both in production and in development.
  • Security

    • brakeman: Brakeman is an open source static analysis tool which checks Ruby on Rails applications for security vulnerabilities *bundle-audit: Checks for vulnerable versions of gems
  • Coding style

    • Rubocop: A Ruby static code analyzer. Out of the box it will enforce many of the guidelines outlined in the community ruby style guide.
    • Rails best practice: A code metric tool to check the quality of Rails code.
  • Some others useful gems

    • kaminari: A Scope & Engine based, clean, powerful, customizable and sophisticated paginator for modern web app frameworks and ORMs
    • will_paginate: Good choice when it comes to pagination, it can get you up and running with pagination in a few line of code
    • Nokogiri: Nokogiri (鋸) is an HTML, XML, SAX, and Reader parser. Among Nokogiri's many features is the ability to search documents via XPath or CSS3 selectors.
    • Ckeditor: A WYSIWYG text editor designed to simplify web content creation
    • spreadsheet: It is designed to read and write Spreadsheet Documents
    • bootstrap-sass: Allow to use the Bootstrap HTML/CSS framework to quick build a usable interface for the application
    • Friend ID: Auto increment primary ID used in rails objects.
    • lodash-rails: Lodash is very helpful in adding enumerable function into javascript and in most case of Rails Application.