Chatwoot/Gemfile

185 lines
4.2 KiB
Text
Raw Normal View History

source 'https://rubygems.org'
ruby '3.0.4'
2019-10-16 22:18:48 +00:00
##-- base gems for rails --##
gem 'rack-cors', require: 'rack/cors'
gem 'rails', '~>6.1'
2019-10-16 22:18:48 +00:00
# Reduces boot times through caching; required in config/boot.rb
gem 'bootsnap', require: false
##-- rails application helper gems --##
gem 'acts-as-taggable-on'
2019-10-16 22:18:48 +00:00
gem 'attr_extras'
gem 'browser'
2019-09-04 04:38:21 +00:00
gem 'hashie'
gem 'jbuilder'
gem 'kaminari'
2019-10-20 08:47:26 +00:00
gem 'responders'
2020-02-14 17:49:17 +00:00
gem 'rest-client'
gem 'telephone_number'
2019-10-16 22:18:48 +00:00
gem 'time_diff'
gem 'tzinfo-data'
2019-10-20 08:47:26 +00:00
gem 'valid_email2'
# compress javascript config.assets.js_compressor
gem 'uglifier'
##-- used for single column multiple binary flags in notification settings/feature flagging --##
gem 'flag_shih_tzu'
# Random name generator for user names
gem 'haikunator'
# Template parsing safely
gem 'liquid'
# Parse Markdown to HTML
gem 'commonmarker'
# Validate Data against JSON Schema
gem 'json_schemer'
# Rack middleware for blocking & throttling abusive requests
gem 'rack-attack'
# a utility tool for streaming, flexible and safe downloading of remote files
gem 'down', '~> 5.0'
##-- for active storage --##
gem 'aws-sdk-s3', require: false
gem 'azure-storage-blob', require: false
gem 'google-cloud-storage', require: false
2022-03-21 07:42:27 +00:00
gem 'image_processing', '~> 1.12.2'
2019-10-16 22:18:48 +00:00
##-- gems for database --#
gem 'groupdate'
2019-09-04 04:38:21 +00:00
gem 'pg'
gem 'redis'
gem 'redis-namespace'
# super fast record imports in bulk
gem 'activerecord-import'
2019-10-16 19:32:42 +00:00
2019-10-16 22:18:48 +00:00
##--- gems for server & infra configuration ---##
🔥Docker and environment variables cleanup (#270) * Added dotenv-rails gem to manage environment variables * Added dotenv-rails gem to manage environment variables * Removed figaro which was used earlier for this purpose * Standardized variable names * Changed all env variables to be upper case. This included changes in files referencing env variables. * Added example env file with all variables set to empty value * Removed the earlier setup of copying application.yml and database.yml and the scripts and documentation associated to this * Docker setup * Added docker file for building the docker images * Added entrypoint.sh script which is referenced inside the Docker image * Cloned the Procfile for development using docker which has slight change compared to regular procfile * Added the docker-compose.yml which has 3 service's configuration, postgres, redis and chatwoot server and a mounted volume for postgres * Added docker related info to documentation * Added the docker setup info in the documentation * Added info for using`rbenv` instead of rvm for managing ruby versions * Updated the documentation for environment variables to have one about `dotenv-rails` gem and removed the documentation about the old copy paste method used by figaro * Changing the postgres database, username and password as environment variables * Removed database.yml from gitignore * Made the postgres databse, username and password as environemnt variables * Added this in documentation * Added a quick setup page * Added quick setup page * Removed the docs from README and added link to the docs in website * Removed the figaro related things from circle.ci config * Adding external volume for redis in docker compose * Added instructions for adding the redis volume in docs
2019-11-23 19:57:39 +00:00
gem 'dotenv-rails'
2019-10-20 08:47:26 +00:00
gem 'foreman'
gem 'puma'
gem 'webpacker', '~> 5.x'
# metrics on heroku
gem 'barnes'
2019-10-16 22:18:48 +00:00
##--- gems for authentication & authorization ---##
gem 'devise'
gem 'devise-secure_password', '~> 2.0', git: 'https://github.com/chatwoot/devise-secure_password'
gem 'devise_token_auth'
2019-10-16 22:18:48 +00:00
# authorization
gem 'jwt'
2019-10-16 22:18:48 +00:00
gem 'pundit'
# super admin
gem 'administrate'
2019-10-16 22:18:48 +00:00
##--- gems for pubsub service ---##
# https://karolgalanciak.com/blog/2019/11/30/from-activerecord-callbacks-to-publish-slash-subscribe-pattern-and-event-driven-design/
2019-10-16 22:18:48 +00:00
gem 'wisper', '2.0.0'
##--- gems for channels ---##
2020-09-08 05:54:08 +00:00
# TODO: bump up gem to 2.0
gem 'facebook-messenger'
gem 'line-bot-api'
gem 'twilio-ruby', '~> 5.66'
# twitty will handle subscription of twitter account events
# gem 'twitty', git: 'https://github.com/chatwoot/twitty'
gem 'twitty'
2019-10-16 22:18:48 +00:00
# facebook client
gem 'koala'
# slack client
gem 'slack-ruby-client'
# for dialogflow integrations
gem 'google-cloud-dialogflow'
2019-10-16 22:18:48 +00:00
##-- apm and error monitoring ---#
gem 'ddtrace'
gem 'elastic-apm'
gem 'newrelic_rpm'
gem 'scout_apm'
gem 'sentry-rails', '~> 5.3'
gem 'sentry-ruby', '~> 5.3'
gem 'sentry-sidekiq', '~> 5.3'
2019-10-16 22:18:48 +00:00
##-- background job processing --##
gem 'sidekiq', '~> 6.4.0'
# We want cron jobs
gem 'sidekiq-cron', '~> 1.3'
2019-10-16 22:18:48 +00:00
##-- Push notification service --##
gem 'fcm'
gem 'webpush'
##-- geocoding / parse location from ip --##
# http://www.rubygeocoder.com/
gem 'geocoder'
# to parse maxmind db
gem 'maxminddb'
# to create db triggers
gem 'hairtrigger'
gem 'procore-sift'
# parse email
gem 'email_reply_trimmer'
gem 'html2text'
# to calculate working hours
gem 'working_hours'
# full text search for articles
gem 'pg_search'
# Subscriptions, Billing
gem 'stripe'
group :production, :staging do
# we dont want request timing out in development while using byebug
gem 'rack-timeout'
end
group :development do
gem 'annotate'
gem 'bullet'
gem 'letter_opener'
2019-09-04 04:38:21 +00:00
gem 'web-console'
2020-02-23 07:24:29 +00:00
# used in swagger build
gem 'json_refs'
# When we want to squash migrations
gem 'squasher'
end
group :test do
# Cypress in rails.
gem 'cypress-on-rails', '~> 1.0'
# fast cleaning of database
gem 'database_cleaner'
# mock http calls
gem 'webmock'
end
group :development, :test do
gem 'active_record_query_trace'
##--- gems for debugging and error reporting ---##
# static analysis
gem 'brakeman'
gem 'bundle-audit', require: false
gem 'byebug', platform: :mri
gem 'climate_control'
2019-09-04 04:38:21 +00:00
gem 'factory_bot_rails'
gem 'faker'
gem 'listen'
gem 'mock_redis'
gem 'pry-rails'
gem 'rspec-rails', '~> 5.0.0'
gem 'rubocop', require: false
gem 'rubocop-performance', require: false
gem 'rubocop-rails', require: false
gem 'rubocop-rspec', require: false
2019-09-04 04:38:21 +00:00
gem 'seed_dump'
gem 'shoulda-matchers'
2020-02-03 08:44:03 +00:00
gem 'simplecov', '0.17.1', require: false
gem 'spring'
gem 'spring-watcher-listen'
2019-10-20 08:47:26 +00:00
end