Created: 2008-04-01 20:07
Updated: 2017-07-27 04:48
License: mit



A no-frills wiki built on Merb 0.9.x and DataMapper 0.9.x


  • Versioned pages
  • Textile/Markdown content formatting
  • Pretty page urls
  • Custom theme support
  • Integration with Defensio for Spam protection
  • Trusted user system based on OpenID

Take It For A Spin

  • $ git clone git://
  • $ cd collective
  • $ cp config/database.yml.sample config/database.yml
  • $ cp config/collective.yml.sample config/collective.yml
  • $ rake db:bootstrap
  • $ merb
  • Open a browser at http://localhost:4000/

Dependencies required

The commands below use the switch to ignore dependencies, as the needed dependencies are included in Collective's local gems repo.

Merb Core 0.9.5:

$ gem install merb-core -v 0.9.5 --ignore-dependencies

A Data Objects Database Adapter:

$ gem install do_sqlite3(or)do_mysql(or)do_postgres -v 0.9.5 --ignore-dependencies

ParseTree (Collective uses merb-action-args which depends on ParseTree):

$ gem install ParseTree

Spam Protection

Collective supports protection against spam using either the Akismet or Defensio API via Viking. By default this support is disabled. To enable support you will need to create a configuration file named spam_protection.yml in the config directory. A sample file is available for you in config/spam_protection.yml.sample.

Your configuration file must:

  • have the name of your desired spam protection service. Available options include: 'akismet', 'defensio', or blank (i.e. disabled).
  • have both your API key and 'blog' connection options included. See the documentation for your service of choice for details on these options.

Lend A Hand

Check out the bug tracker. Pull requests and patches are welcomed.

Cookies help us deliver our services. By using our services, you agree to our use of cookies Learn more