Code Monkey home page Code Monkey logo

government-service-design-manual's Introduction

๐Ÿšจ This repository is no longer maintained. This is the source of the first version of the Service Manual which was replaced in December 2016. You can follow what we're doing now at alphagov/service-manual-publisher and alphagov/service-manual-frontend.

Build Status

Government Service Design Manual

This is the repository for the UK government's guidance and standards for developing digital services and contains both the assets and the content for the site.

The site is built using Jekyll, and the CSS is Sassified. Some validation of the content happens using Go, so you will need to have Go installed if you wish to use the Makefile.

Deploying

GDS-specific instructions are for how to deploy this content.

Running the app yourself

Depending on your version of Git, you may need to run these commands to bring in the GOV.UK Frontend Toolkit:

$ git submodule init
$ git submodule update

This should import Sass files from the GOV.UK Frontend Toolkit repository into /service-manual/assets/toolkit/.

Next, install dependencies using bundler::

$ bundle install

You need to create the content::

$ bundle exec jekyll build

To start the app::

$ bundle exec ruby app.rb

This will compile the site and make it available at http://localhost:4567/.

In a separate terminal, you'll need to run:

$ bundle exec jekyll build --watch

This will monitor the service manual and rebuild it whenever it's changed.

Running on Heroku

This application should run fine on Heroku. You will need to have set yourself up with a Heroku account and the command-line tools. Then create an application on Heroku.

> heroku create <app-name>

Make your change locally, commit and deploy them to Heroku as needed. If the code you're deploying is not in master, then you'll need to make sure you specify your local branch to push to master. Otherwise it will just deploy your local master (and probably not work as expected).

> git push heroku master

Then open https://app-name.herokuapp.com/service-manual/ to see your changes.

Click-through version

Deploy

YAML page meta data schema

Pages in a Jekyll site begin with a section of YAML meta data, which specifies how the page should be rendered, where it should be linked from and so on.

The following keys are used throughout:

Content page meta data

Key Values Description
title: Page title Used at the top of the page, and in links to the page
subtitle: Page subtitle Used below page title, and optionally in links to the page
category agile, assisted-digital, user-centred-design, etc The category the page lives in the browse page
layout: detailed-guidance, role-index, phases, etc Page layout
type: guide, resource Used to differentiate content types so they can be grouped on index pages
audience: primary: designer, developer, researcher etc. Primary audience. Link to page will appear in top half of audience index page
audience: secondary: Secondary audience. Link to page will appear in bottom half of audience index
phases: discovery, alpha, beta, live An array of values. Adds links to page header and lists pages in relevant phase page
breadcrumbs: An array of objects with title: and url: values Adds a breadcrumb trail to the top of the page
exclude_from_search: true Exclude the page from search. The default behaviour is to include the page in search.

Index page meta data

Index pages list out links to content pages, for example, the role specific pages that are built using the audience keys.

Key Description
hero: Takes the value of the title key of a page

government-service-design-manual's People

Contributors

adambailin avatar adgreenway avatar ajlanghorn avatar alexmuller avatar alextea avatar benilovj avatar bradwright avatar brunns avatar daibach avatar dhwthompson avatar edds avatar garethr avatar issyl0 avatar jabley avatar jystewart avatar katielee avatar mattedgar avatar mattsheret avatar nickbreeze avatar nickstenning avatar paulannett avatar phae avatar philandstuff avatar psd avatar richardjpope avatar sarahrichards avatar thehenster avatar timpaul avatar tombye avatar weeza avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.