Here is the full set of config options. ```yaml # frozen_string_literal: true # NOTE: you typically will leave the commented out configurations set to their defaults. # Thus, you only need to pay careful attention to the non-commented settings in this file. ReactOnRails.configure do |config| # defaults to "" (top level) # config.node_modules_location = "" # This configures the script to run to build the production assets by webpack. Set this to nil # if you don't want react_on_rails building this file for you. config.build_production_command = "RAILS_ENV=production bin/webpack" ################################################################################ ################################################################################ # TEST CONFIGURATION OPTIONS # Below options are used with the use of this test helper: # ReactOnRails::TestHelper.configure_rspec_to_compile_assets(config) ################################################################################ # If you are using this in your spec_helper.rb (or rails_helper.rb): # # ReactOnRails::TestHelper.configure_rspec_to_compile_assets(config) # # with rspec then this controls what yarn command is run # to automatically refresh your webpack assets on every test run. # config.build_test_command = "RAILS_ENV=test bin/webpack" # Directory where your generated assets go. All generated assets must go to the same directory. # If you are using webpacker, this value will come from your config/webpacker.yml file. # This is the default in webpacker.yml: # public_output_path: packs-test # which means files in /public/packs-test # # Alternately, you may configure this. It is relative to your Rails root directory. # A custom, non-webpacker, config might use something like: # config.generated_assets_dir = File.join(%w[public webpack], Rails.env) # The test helper needs to know where your JavaScript files exist. The default is configured # by your config/webpacker.yml soure_path: # source_path: app/javascript # # If you have a non-default `node_modules_location`, that is assumed to be the location of your source # files. # Define the files we need to check for webpack compilation when running tests. # The default is `%w( manifest.json )` as will be sufficient for most webpacker builds. # config.webpack_generated_files = %w( manifest.json ) ################################################################################ ################################################################################ # SERVER RENDERING OPTIONS ################################################################################ # This is the file used for server rendering of React when using `(prerender: true)` # If you are never using server rendering, you should set this to "". # Note, there is only one server bundle, unlike JavaScript where you want to minimize the size # of the JS sent to the client. For the server rendering, React on Rails creates a pool of # JavaScript execution instances which should handle any component requested. # # While you may configure this to be the same as your client bundle file, this file is typically # different. config.server_bundle_js_file = "server-bundle.js" # If set to true, this forces Rails to reload the server bundle if it is modified # Default value is Rails.env.development? # config.development_mode = Rails.env.development? # For server rendering. This can be set to false so that server side messages are discarded. # Default is true. Be cautious about turning this off. # Default value is true # config.replay_console = true # Default is true. Logs server rendering messages to Rails.logger.info # config.logging_on_server = true # Default is to false to NOT raise exception on server if the JS code throws. # Reason is that it's easier to debug this when you get the error over to the client. # config.raise_on_prerender_error = false # Server rendering only (not for render_component helper) # You can configure your pool of JS virtual machines and specify where it should load code: # On MRI, use `mini_racer` for the best performance # (see [discussion](https://github.com/reactjs/react-rails/pull/290)) # On MRI, you'll get a deadlock with `pool_size` > 1 # If you're using JRuby, you can increase `pool_size` to have real multi-threaded rendering. config.server_renderer_pool_size = 1 # increase if you're on JRuby config.server_renderer_timeout = 20 # seconds ################################################################################ # I18N OPTIONS ################################################################################ # Replace the following line to the location where you keep translation.js & default.js for use # by the npm packages react-intl. Be sure this directory exists! # config.i18n_dir = Rails.root.join("client", "app", "libs", "i18n") # If not using the i18n feature, then leave this section commented out or set the value # of config.i18n_dir to nil. # # Replace the following line to the location where you keep your client i18n yml files # that will source for automatic generation on translations.js & default.js # By default(without this option) all yaml files from Rails.root.join("config", "locales") # and installed gems are loaded config.i18n_yml_dir = Rails.root.join("config", "locales", "client") ################################################################################ ################################################################################ # CLIENT RENDERING OPTIONS # Below options can be overriden by passing options to the react_on_rails # `render_component` view helper method. ################################################################################ # default is false config.prerender = false # default is true for development, off otherwise config.trace = Rails.env.development? end ```