{"id":82111,"library":"cleanroom","title":"Cleanroom","description":"Provides a safer, more convenient Ruby-like approach for limiting the information exposed by a DSL while giving users the ability to write awesome code.","status":"active","version":"1.0.0","language":"ruby","source_language":null,"source_url":"https://github.com/sethvargo/cleanroom","tags":["dsl","security","sandbox","evaluation"],"install":[{"cmd":"gem install cleanroom","lang":"bash","label":"gem install"},{"cmd":"# Gemfile\ngem 'cleanroom', '~> 1.0.0'","lang":"ruby","label":"Gemfile"}],"dependencies":[],"imports":[{"symbol":"Cleanroom","correct":"require 'cleanroom'"}],"quickstart":{"code":"require 'cleanroom'\nclass MyDSL < Cleanroom::Base\n  expose :greet\n  def greet(name)\n    \"Hello, #{name}\"\n  end\nend\nMyDSL.new.evaluate('greet(\"World\")')","lang":"ruby","description":"Create and evaluate a safe DSL"},"warnings":[],"env_vars":null,"search_vec":"'abil':23 'approach':10 'awesom':26 'cleanroom':1 'code':27 'conveni':6 'dsl':18,28 'evalu':31 'expos':15 'give':20 'inform':14 'like':9 'limit':12 'provid':2 'rubi':8 'ruby-lik':7 'safer':4 'sandbox':30 'secur':29 'user':21 'write':25","created_at":"2026-06-19T05:11:21.953580+00:00","updated_at":"2026-06-19T05:11:21.953580+00:00","problems":[],"ecosystem":"rubygems","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/sethvargo/cleanroom","github":"https://github.com/sethvargo/cleanroom","docs":"http://www.rubydoc.info/gems/cleanroom/","changelog":null,"pypi":null,"npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["utility"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-19","next_check":"2026-12-16","install_tag":null}}