Skip to content

nhsuk/nhsuk-prototype-kit

Repository files navigation

NHS prototype kit

Visit the NHS prototype kit site to download the latest version and read the documentation.

About the NHS prototype kit

The NHS prototype kit enables you to make interactive prototypes that will look like pages on NHS.UK. The prototypes you make are a great way to show ideas to others and for conducting user research.

Security

If you publish your prototypes online, they must be protected by a username and password. This is to prevent members of the public finding prototypes and thinking they are real services.

You must protect user privacy at all times, even when using prototypes. Prototypes made with the kit look like NHS.UK, but do not have the same security provisions. Always make sure you are handling user data appropriately.

Installation instructions

Running the kit

Start the kit with npm run watch.

Contribute

If you want to contribute to the NHS prototype kit, by reporting bugs, fixing bugs, suggesting new features or writing documentation, then read our contributing guidelines.

Development environment

Before running Gitpod, you must install the Gitpod.io application on your GitHub account.

Gitpod also requires access to public repositories. Enable this via Gitpod integrations. (Click on the 3 dots to edit permissions for your GitHub account. Gitpod may pre-select permissions. You need read/write access to code in the repos.)

Using your own GitHub credentials you can create, change, commit and push to branches on our Gitpod container via the "ready to code" button below.

Gitpod ready-to-code

Read an introduction to Gitpod (on Gitpod's website).

Release lifecycle

The below is only for maintainers of the prototype kit source code - these instructions aren't relevant if you're building your own prototype using the kit.

Testing

Run unit tests locally with npm run test.

Environments

Versioning and releasing

  • Merge required changes via PR into main branch
    • Ensure the version number in package.json and CHANGELOG.md match, with a summary of the changes included in the changelog
  • Pull down merged main branch to your local repository
  • Create a tag with the version number from the latest commit on main
    • If the latest version you're looking to push is version "1.2.3", you can do this on the command line with
      • git tag v1.2.3
      • git push --tags
  • Github actions will spring to life and create a release which will be visible on the releases tab of the repository.
  • Finally, edit the description of the release to match the content entered into the changelog.
  • To deploy the changes to Live, the promotion to Live from the Preview environment must have the appropriate approval in Azure.

Code Analysis

Code analysis results can be found in SonarQube.

Support

The NHS prototype kit is maintained by NHS England. Email us, open a Github issue or get in touch on the NHS digital service manual Slack workspace.