require 'sinatra' module Sinatra::Metal module ClassMethods def metal(base = nil) base = '' unless base || @metal @metal = /^#{Regexp.escape base}/ if base @metal end end def self.included(base) base.extend ClassMethods base.disable :raise_errors base.app_file caller.first.split(':').first base.before { not_found unless request.path_info =~ self.class.metal } base.metal end end