Skip to content

6. Major Gems

TecOrb Technologies edited this page Oct 5, 2022 · 1 revision

Must go through major gems used in this project

Here are some of the major gems we have used in this project also we must go through for future uses.

Database
  • gem 'mysql2', '~> 0.5' # For databse. Here is the link
Athentication
  • gem 'doorkeeper-jwt' # For authentication. Here is the link
  • gem 'bcrypt', '~> 3.1.7' # For authentication. Here is the link
Manage data and views
  • gem 'will_paginate', '~> 3.1.0' # For paginate active records. Here is the link
  • gem 'active_model_serializers' # For preparing object-oriented JSON responses. Here is the link
  • gem 'draper' # For using model decorators. Here is the link
Manage background/scheduled jobs
  • gem 'redis', '~> 4.0' # For caching database. Here is the link
  • gem 'sidekiq', '~> 6.4.0' # For background processing (job scheduler). Here is the link
Testing
  • gem 'rspec-rails', '~> 6.0.0' Here is the link
  • gem "factory_bot_rails" Here is the link1, link2

For better use of gem 'factory_bot_rails' here is the detailed documentation about installation, configurations and uses.

Action Cable Channel

User need to subscribe a chat channel to get notify through action cable. Action Cable url will be send by server where the application is hosted followed by the /cable path. Channel name is initiated by a prefix 'notify_' and user's id. To subscribe a channel user need to send their access token in 'session_token' key at the time of subscription request. Once user will be authenticated successfully, server will allow to subscribe the requested channel for the client.

Clone this wiki locally