This repository has been archived by the owner. It is now read-only.
Gem to transform content-store data into payloads for GOV.UK frontend components
Ruby
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib
spec
.gitignore
.rspec
.rubocop.yml
.ruby-version
CHANGELOG.md
Gemfile
Jenkinsfile
LICENCE.txt
README.md
Rakefile
govuk_navigation_helpers.gemspec

README.md

GOV.UK Navigation Helpers

This is a gem to share code between GOV.UK frontends.

** It should not be used anymore ***

This gem was a temporary solution to the problem of sharing code used to generate the input to components. Since the components can now be built into the govuk_publishing_components gem, it is no longer necessary.

Nomenclature

  • content item: An object returned by the content store

Technical documentation

These helpers format data from the content store for use with GOV.UK Components.

Installation

Add this line to your application's Gemfile:

gem 'govuk_navigation_helpers', '~> VERSION'

And then execute:

$ bundle

Configuration

This gem allows the configuration of:

  • an error handler class (e.g. Airbrake), that implements a notify method which takes an exception object (by default, it prints the exception to stdout when not configured);
  • a statsd client - when not configured, it does not do anything. This client should implement increment(metric) and time(metric, &block).

Usage

Get the JSON representation of a page and initialise the helper:

def some_controller_method
  content_item = Services.content_store.content_item("/register-to-vote")
  @navigation = GovukNavigationHelpers::NavigationHelper.new(content_item)
end

Render the component:

<%= render partial: 'govuk_component/breadcrumbs', locals: @navigation.breadcrumbs %>
<%= render partial: 'govuk_component/related_items', locals: @navigation.related_items %>

Running the test suite

bundle exec rake

Documentation

See RubyDoc for some limited documentation.

To run a Yard server locally to preview documentation, run:

$ bundle exec yard server --reload

Licence

MIT License