Grat 0

Simple MongoDB + Rack (Sinatra) Content Management System

5 years after MIT

= Grat

Grat is a minimal content management dealy.

It runs on Rack and uses MongoDB for wicked flexibility.


== Get setup

Use it like so:

  1. Install gem (may need to set up gemcutter)

  2. Fresh directory

  3. file containing: require 'rubygems' require 'rack' require 'grat'

    Grat.database_conf # uses defaults, database=grat_development

    to override:

    Grat.database_conf(:host => 'localhost', :database => 'grat_special')

    use Rack::ShowExceptions # <- Up to you. run Grat::Application

  4. rackup (or passenger, if you know how)

  5. http://localhost:9292/__admin/edit/mypage edits a page that will be available at http://localhost:9292/mypage

  6. http://localhost:9292/__admin/ for a list of all pages

  7. http://localhost:9292/__admin/export to get a json dump of all pages

  8. http://localhost:9292/__admin/import to import one of those dumps

  9. Protect from writes by strangers with Rack::If

    use Rack::If, {:method => /(POST)|(PUT)|(DELETE)/, :path => /__admin/}, :any do use Rack::Auth::Basic, "Grat protected" do |username, password| 'secret' == password end end

== 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) 2009 Sam Schenkman-Moore. See LICENSE for details.

Related Repositories



Graticule is a geocoding API for looking up address coordinates and performing d ...



DHCP exhaustion script written in python using scapy network library ...



Add simple navigation helpers to middleman static site generator ...



Any other spell-checkers out there? Let's call this one the bait. ...



Lua Name Generator ...

Top Contributors