```ruby
module HalfPipe
  class Engine < Rails::Engine

    config.before_configuration do
      config.half_pipe = ActiveSupport::OrderedOptions.new
      config.half_pipe.serve_assets = false
    end

    initializer "half_pipe.middleware", after: "build_middleware_stack" do |app|
      app.config.middleware.use Rack::HalfPipe if config.half_pipe.serve_assets
    end

  end
end
```

Add option to silence assets in log
user
```ruby
module HalfPipe
  class Engine < Rails::Engine

    config.before_configuration do
      config.half_pipe = ActiveSupport::OrderedOptions.new
      config.half_pipe.serve_assets = false
      config.half_pipe.quiet_assets = false
    end

    initializer "half_pipe.middleware", after: "build_middleware_stack" do |app|
      app.config.middleware.use Rack::HalfPipe if config.half_pipe.serve_assets
    end

    initializer "half_pipe.quiet_assets", after: "build_middleware_stack" do |app|
      next unless app.config.half_pipe.quiet_assets

      ASSETS_PREFIX = %r{\/(?:images|scripts|styles|components)}

      Rails::Rack::Logger.class_eval do
        def call_with_quiet_assets(env)
          old_logger_level, level = Rails.logger.level, Logger::ERROR
          # Increase log level because of messages that have a low level should not be displayed
          Rails.logger.level = level if env['PATH_INFO'] =~ ASSETS_PREFIX
          call_without_quiet_assets(env)
        ensure
          Rails.logger.level = old_logger_level
        end
        alias_method_chain :call, :quiet_assets
      end

    end

  end
end
```
assistant