Ruby SDK
Thread-safe client for evaluating feature flags in Ruby applications.
Installation
ruby
# Gemfile
gem "featuresignals"Requirements: Ruby 3.1+
Quick Start
ruby
require "featuresignals"
options = FeatureSignals::ClientOptions.new(env_key: "production")
client = FeatureSignals::Client.new("fs_srv_your_api_key", options)
client.wait_for_ready
user = FeatureSignals::EvalContext.new(
key: "user-123",
attributes: { "plan" => "pro" }
)
enabled = client.bool_variation("new-feature", user, false)
puts "Feature enabled: #{enabled}"Rails Integration
ruby
# config/initializers/feature_signals.rb
Rails.application.config.to_prepare do
options = FeatureSignals::ClientOptions.new(
env_key: Rails.env.production? ? "production" : "development",
streaming: true,
)
FEATURE_FLAGS = FeatureSignals::Client.new(
ENV.fetch("FEATURESIGNALS_API_KEY"), options
)
end
at_exit { FEATURE_FLAGS&.close }