Ruby HTML JavaScript CSS Gherkin Shell
Switch branches/tags
Clone or download
Latest commit 02e1656 Jun 22, 2018
Failed to load latest commit information.
app Merge pull request #4145 from alphagov/topic-taxonomy-tagging-tweaks Jun 22, 2018
bench Fix Lint/AmbiguousBlockAssociation offences Jan 16, 2018
bin Adapt code for Rails 5 Sep 1, 2017
config Merge pull request #4135 from alphagov/enable-hmt-to-tag-to-the-topic… Jun 21, 2018
db Reslug more UKTI organisations to DIT Jun 22, 2018
docs Update the docs for incorrect javascript test url Jun 14, 2018
features Merge pull request #4123 from alphagov/reshuffle-mode Jun 15, 2018
lib Call AttachmentDeleter from edition services Jun 21, 2018
log Quite literally the initial commit. Sep 19, 2011
public Amended comment from 404 to 403 Mar 16, 2015
script Update the docs for incorrect javascript test url Jun 14, 2018
test Add more details to organisations presenter Jun 22, 2018
vendor/assets/stylesheets Revert "Revert "Merge pull request #571 from alphagov/rails-upgrade"" Jun 20, 2013
.dockerignore Add .dockerignore file Jan 31, 2018
.env Remove taxonomy feature flag Mar 28, 2017
.env.test Remove taxonomy feature flag Mar 28, 2017
.gitignore Add a directory for temporary storage of assets Oct 10, 2017
.rubocop.yml Exclude a couple more files from Style/FormatStringToken Jun 13, 2018
.ruby-version Bump to ruby-2.5.1 May 30, 2018
.yardopts Remove deleted doc from yardopts Nov 29, 2017 Update contributing doc Sep 21, 2017
Dockerfile Bump to ruby-2.5.1 May 30, 2018
Gemfile Bump govuk_publishing_components from 9.2.3 to 9.3.0 Jun 18, 2018
Gemfile.lock Bump uglifier from 4.1.11 to 4.1.12 Jun 20, 2018
Jenkinsfile Change rubyLintDiff to false in the Jenkinsfile Jun 13, 2018
LICENCE Fix the copyright notice Feb 18, 2015
Procfile Use foreman to run unicorn in docker Jan 31, 2018 Update README to include link-checker-api dependencies Jan 16, 2018
Rakefile Fix Lint/ScriptPermission offences Jan 16, 2018 Fix Layout/ExtraSpacing offences Jan 16, 2018 Remove detailed guide categories from database Aug 7, 2015 Revert using foreman in dev environment Feb 21, 2018


whitehall is a Ruby on Rails content management application for content published by government departments and agencies.


  • Govspeak A variation of Markdown used throughout whitehall as the general publishing format

Technical documentation

whitehall is a Ruby on Rails app built on a MySQL database. It is deployed in two modes: 'admin' for publishers to create and manage content and 'frontend' for rendering some content under and whitehall also sends most content to the publishing-api and rummager.

Assets are currently handled by whitehall. It handles uploads, virus scanning and serving of assets. There is a current project to migrate whitehall to use Asset Manager.


Running the application

$ ./

If you are using the GDS development virtual machine then the application will be available on the host at

Further setup instructions are available in the detailed setup guide.

Running the test suite

$ bundle exec rake

Other documentation

Generating technical documentation

We use YARD for the technical documentation. You can generate a local copy with:

yard server --reload

You can also read the docs on


MIT License