Skip to content
Web content system based on Ruby on Rails.
Ruby HTML Gherkin CSS Other
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.


Type Name Latest commit message Commit time
Failed to load latest commit information.


Web content framework.

Twitter: @wayground

A somewhat generic platform for handling web content management (CMS), contact relation management (CRM), democracy tools, calendaring, open data, content aggregation, etc.

Project lead: Grant Neufeld



You must have ruby installed (at least version 2.4). You may want to use something like RVM to manage installation of ruby.

By default, we are using PostgreSQL as the database backend, so you will need an installation of that (although not necessarily on the same computer/server/host). Version 9.3 or later recommended.

These commands should be issued from the project directory (e.g., ~/projects/wayground). Depending on your ruby setup, you may need to prefix the gem calls that follow with sudo.

Make sure your ruby gem system is up to date:

gem update --system

Make sure you have Bundler for installing gems:

gem install bundler

For deployment, you either need a hosted service that can support Ruby on Rails and your database, or you need a suitable web server installed (such as Apache, with the Passenger extension for ruby).

For non-production installations (e.g., for developers), please also refer to the developer documentation: doc/Developers/


Put the entire project directory where you want it on your web server’s file system.

Copy config/database.default.yml to config/database.yml and edit that file to use the appropriate configuration for your database. The default will use PostgreSQL. Using another database may require some changes to the migration files and may cause problems if the database doesn’t handle array or hash column types.

Copy config/initializers/secret_token.rb.default to config/initializers/secret_token.rb, then edit that file to use your own, made-up (random), secret key.

Copy config/initializers/omniauth.rb.default to config/initializers/omniauth.rb, then edit that file to use your own external service authentication codes.

From within the project directory, run the following command to ensure you have the required gems (and the required versions of those gems):


Run this command to setup the required data tables in your database:

bundle exec rails db:migrate RAILS_ENV#production

On production servers, run this command to precompile the assets (javascripts, stylesheets,…):

bundle exec rails assets:precompile

Set your web server’s configuration to point to the project directory (either for the server as a whole, or for the specific domain you want to be served). Restart your web server, if necessary, for it to start serving your new site.

Go to your new site and follow the “Sign Up” link to create your first user account on the site. The first user will automatically have admin privileges and can assign privileges to other users.


The overall look of the site is defined by the html template: app/views/application.html.erb

and by the stylesheets in: app/assets/stylesheets/

Be careful when editing .erb files that you don’t break the ruby code embedded in them. The ruby code in .erb files is wrapped in “<% … %>”.

Third Party Content


Portions of this code are taken from, or modified from, other open source projects:

  • User access cucumber feature tests derived from Clearance


You can’t perform that action at this time.