Home > sinatra-settings

sinatra-settings

Sinatra-settings is a project mainly written in Ruby, based on the MIT license.

A Sinatra Extension that shows your app's settings and other debug information

= Sinatra::Settings

A Sinatra Extension that shows your app's settings and other debug information.

Ever wanted an overview of all Sinatra settings (formerly options) in your app?

Well, now you can through this Sinatra Extension which makes that task dead simple, while also adding in some other useful debug information in the output.

With a heavy dose of inspiration taken from Sinatra's Show Exception output page.

== Installation

$ (sudo)? gem install sinatra-settings

== Dependencies

This Gem depends upon the following:

=== Runtime:

  • sinatra ( >= 1.0 )

=== Development & Tests:

  • rspec (>= 1.3.0 )
  • rack-test (>= 0.5.3)
  • rspec_hpricot_matchers (>= 0.1.0)
  • sinatra-tests (>= 0.1.6)

== Getting Started

To view the settings in your app, just require and register the extension in your sub-classed Sinatra app:

require 'sinatra/settings'

class YourApp < Sinatra::Base

register(Sinatra::Settings)

enable :show_settings   # turn it on 

<snip...>

end

In your "classic" Sinatra app, you just require the extension like this:

require 'rubygems' require 'sinatra' require 'sinatra/settings'

Then at the bottom of your App's layout - layout.(erb|haml) add the following: <%= show_settings_output? %> Reload your app and view the added content at the bottom of your page. You can see an example of the output here: http://kematzy.com/tmp/sinatra-settings/sinatra-settings-extension-output-50.jpg That's really all there is. == Configuration Options By default, these are the settings: # don't show settings by default set :show_settings, false # only show the settings in development mode. set :show_settings_environment, :development Apart from turning it On / Off, you can also set the output to show up in :production or :test enviroments. The advantage of having two configuration 'switches' is that you can leave all the code as is, and in +:development+ it will show the output, but in :production no output will be shown (other than a tiny HTML comment telling you it's Off) That's it. I hope that's easy enough. == RTFM If the above is not clear enough, please check the Specs for a better understanding. == Errors / Bugs If something is not behaving intuitively, it is a bug, and should be reported. Report it here: http://github.com/kematzy/sinatra-settings/issues == TODOs * Decide whether this functionality should really be incorporated into a Sinatra::Debug extension instead. * Any other improvements you or I can think of. == Note on Patches/Pull Requests * Fork the project. * Make your feature addition or bug fix. * Add tests for it. This is important so I don't break it in a future version unintentionally. * Commit, do not mess with rakefile, version, or history. * (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull) * Send me a pull request. Bonus points for topic branches. == Copyright Copyright (c) 2010 kematzy. Released under the MIT License. See LICENSE for details.
Previous:Dream-About-It