Git Product home page Git Product logo

useful-rails-gems's Introduction

Popular And Useful Rails Gems

Here I'm listing some popular and useful gems which I have used in my projects. later I will add implementation and demo of these gems.

gem 'dry-validation'

dry-validation is a data validation library that provides a powerful DSL for defining schemas and validation rules.

Validations are expressed through contract objects. A contract specifies a schema with basic type checks and any additional rules that should be applied. Contract rules are applied only once the values they rely on have been succesfully verified by the schema.

gem "validates_timeliness"

Date and time validation plugin for ActiveModel and Rails.Adds validation for dates, times and datetimes to ActiveModel.Handles timezones and type casting of values for you

gem  'phonelib'

Phonelib is a gem allowing you to validate phone number. All validations are based on Google libphonenumber. Currently it can make basic validations and formatting to e164 international number format and national number format with prefix. But it still doesn't include all Google's library functionality.

gem "timeliness"

Date/time parser for Ruby. It's pretty fast. Up to 60% faster than Time/Date parse method.

gem 'timecop'

A gem providing "time travel" and "time freezing" capabilities, making it dead simple to test time-dependent code. It provides a unified method to mock Time.now, Date.today, and DateTime.now in a single call.

gem 'simplecov'

SimpleCov is a code coverage analysis tool for Ruby. It uses Ruby's built-in Coverage library to gather code coverage data, but makes processing its results much easier by providing a clean API to filter, group, merge, format, and display those results, giving you a complete code coverage suite that can be set up with just a couple lines of code.

In most cases, you'll want overall coverage results for your projects, including all types of tests, Cucumber features, etc. SimpleCov automatically takes care of this by caching and merging results when generating reports, so your report actually includes coverage across your test suites and thereby gives you a better picture of blank spots.

gem 'capybara'

Capybara helps you test web applications by simulating how a real user would interact with your app. It is agnostic about the driver running your tests and comes with Rack::Test and ```rubySelenium support built in. WebKit is supported through an external gem.

gem 'factory_bot'

factory_bot is a fixtures replacement with a straightforward definition syntax, support for multiple build strategies (saved instances, unsaved instances, attribute hashes, and stubbed objects), and support for multiple factories for the same class (user, admin_user, and so on), including factory inheritance.

gem 'faker'

Faker, a port of Data::Faker from Perl, is used to easily generate fake data: names, addresses, phone numbers, etc.

gem "rollbar"

Rollbar is a real-time exception reporting service for Ruby and other languages. The Rollbar service will alert you of problems with your code and help you understand them in a ways never possible before. We love it and we hope you will too.

gem 'better_errors'

Better Errors replaces the standard Rails error page with a much better and more useful error page. It is also usable outside of Rails in any Rack app as Rack middleware.

gem 'rubocop'

RuboCop is a Ruby static code analyzer (a.k.a. linter) and code formatter. Out of the box it will enforce many of the guidelines outlined in the community Ruby Style Guide.

gem 'mongo'

A Ruby driver for MongoDB

gem 'active_model_serializers'

ActiveModel::Serializers allows you to generate your JSON in an object-oriented and convention-driven manner.

gem 'draper' 

Decorators/View-Models for Rails Applications

gem 'elasticsearch'

Ruby integrations for Elasticsearch (client, API, etc.)

gem 'ransack'

Ransack is a rewrite of MetaSearch created by Ernie Miller and developed/maintained for years by Jon Atack and Ryan Bigg with the help of a great group of contributors. Ransack's logo is designed by Anıl Kılıç. While it supports many of the same features as MetaSearch, its underlying implementation differs greatly from MetaSearch, and backwards compatibility is not a design goal.

gem 'mail_form'

MailForm allows you to send an e-mail straight from a form. For instance, if you want to make a contact form just the following lines are needed (including the e-mail)

gem 'letter_opener'

Preview email in the default browser instead of sending it. This means you do not need to set up email delivery in your development environment, and you no longer need to worry about accidentally sending a test email to someone else's address.

gem "comfy_blog", 

CMS in Rails. Blog Engine for ComfortableMexicanSofa

gem "ckeditor"

CKEditor is a WYSIWYG text editor designed to simplify web content creation. It brings common word processing features directly to your web pages. Enhance your website experience with our community maintained editor

gem 'remotipart' 

Rails jQuery file uploads via standard Rails "remote: true" forms.

gem "rails-assets-arboshiki--lobibox"

Responsive jQuery notification plugin written from scratch.

gem "rails-assets-datatables.net-bs"

DataTables is a table enhancing plug-in for the jQuery Javascript library, adding sorting, paging and filtering abilities to plain HTML tables with minimal effort. The stated goal of DataTables is:

gem "rails-assets-fusioncharts"

The most comprehensive JavaScript charting library, with over 100+ charts and 2000+ maps. Integrated with all popular JavaScript frameworks and server-side programming languages

gem "rails-assets-malihu-custom-scrollbar-plugin"

Highly customizable custom scrollbar jQuery plugin, featuring vertical/horizontal scrollbars, scrolling momentum, mouse-wheel, keyboard and touch support etc.

gem "select2-rails"

Integrate Select2 javascript library with Rails asset pipeline.

gem 'pdfkit'

A Ruby gem to transform HTML + CSS into PDFs using the command-line utility wkhtmltopdf.

gem "spreadsheet"

The Spreadsheet Library is designed to read and write Spreadsheet Documents. As of version 0.6.0, only Microsoft Excel compatible spreadsheets are supported. Spreadsheet is a combination/complete rewrite of the Spreadsheet::Excel Library by Daniel J. Berger and the ParseExcel Library by Hannes Wyss. Spreadsheet can read, write and modify Spreadsheet Documents.

gem "roo"

Roo implements read access for all common spreadsheet types.

gem "rails-erd"

Generate Entity-Relationship Diagrams for Rails applications

gem guard-livereload""

LiveReload guard allows to automatically reload your browser when 'view' files are modified.

gem "site_prism"

SitePrism gives you a simple, clean and semantic DSL for describing your site using the Page Object Model pattern, for use with Capybara in automated acceptance testing

gem "database_cleaner"

Database Cleaner is a set of strategies for cleaning your database in Ruby.

gem 'social-share-button'

Helper for add social share feature in your Rails app. Facebook, Twitter, Douban, Google+, Weibo, QZone, Google Bookmark, Delicious, Tumblr, Pinterest, Email, LinkedIn, WeChat (Weixin), Vkontakte, Odnoklassniki, Xing, Reddit, Hacker News, Telegram, WhatsApp.

gem 'rack-cors' 

Rack Middleware for handling Cross-Origin Resource Sharing (CORS), which makes cross-origin AJAX possible.

gem 'any_login'

Easy way to login as any user in system.

gem 'wicked'

Use wicked to make your Rails controllers into step-by-step wizards

gem 'rack-attack' 

Protect your Rails and Rack apps from bad clients. Rack::Attack lets you easily decide when to allow, block and throttle based on properties of the request

gem 'friendly_id' 

FriendlyId is the “Swiss Army bulldozer” of slugging and permalink plugins for ActiveRecord. It allows you to create pretty URL’s and work with human-friendly strings as if they were numeric ids for ActiveRecord models.

gem 'public_activity'

public_activity provides easy activity tracking for your ActiveRecord, Mongoid 3 and MongoMapper models in Rails 3.0 - 5.0. Simply put: it records what has been changed or created and gives you the ability to present those recorded activities to users - in a similar way to how GitHub does it.

gem amoeba""

A ruby gem to allow the copying of ActiveRecord objects and their associated children, configurable with a DSL on the model

gem 'paranoia' 

ActiveRecord plugin allowing you to hide and restore records without actually deleting them.

gem 'jwt' 

A ruby implementation of the RFC 7519 OAuth JSON Web Token (JWT) standard.

gem "paper_trail"

Track changes to your models, for auditing or versioning. See how a model looked at any stage in its lifecycle, revert it to any version, or restore it after it has been destroyed

gem "aasm"

Adding a state machine is as simple as including the AASM module and start defining states and events together with their transitions:

gem "aws-sdk-s3"

aws-sdk gem contains every available AWS service gem support. Please use a major version when expressing a dependency on aws-sdk

gem "to_words"

converts numbers into words

useful-rails-gems's People

Contributors

vin-droid avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.