The NHS login help centre is where you can find helpful information, guidance, and support for issues with NHS login.
Do not change the Zendesk client ID keys in src/_data/clients.json as it would mess up zendesk reporting.
npm install
to install dependenciesnpm run dev
to run locally with hot reloading atlocalhost:3000
npm run build
to buildnpx serve ./_site
to run as static site after build (need to globally install serve package from npm)
There are two pipelines in the NHS login AWS account:
- helpcentre-live-develop runs from develop branch, deploys to dev.
- helpcentre-live-master runs from master branch, deploys to qa and afterwards to production.
No other environments exist, so we don't do feature branch testing. Testing can be done locally before merging to develop.
File structure is as follows:
/src/app/page.tsx
: Home page, with other page.tsx files in subfolders according to routing/src/lib
: Contains the logic for generating page html from markdown files, see Static Site Generation/src/**/*.md
: Page content for articles and hubs (may contain html where needed)/src/app/_components
: React components for use in pages/public/images
asset folders for favicons etc
These pages are nested version of the main hub used for navigation. They require the following keys and no content to set up the hub pages, and are usually in index files. The app structure is based on the metadata, using 'type' and 'parent' fields, not according to the directories, but kept in a sensible directory structure for convenience.
title
: Page titleshort_title
: Name to be used in the navigation menusubtitle
: A description of the HubpageName
: The page name sent to analytics, minus "nhs:cid:help-centre:", should be all lowercase with dashesname
: the id of the hubtype
: Alwayshub
layout
: no longer needed, can be removedhub
: the name of the parent hub page (home
for the home page)position
: determines the position on the parent hub page
These pages place their content in the article page template that generates related the side menu and breadcrumbs. They require the following keys contained at the top of every article:
title
: Page titlesubtitle
: A description of the pagepageName
: The page name sent to analytics, minus "nhs:cid:help-centre:", should be all lowercase with dashestype
: Alwaysarticle
hub
: The Hub page that the article page will appear onposition
: The position on the hub pagelayout
: no longer needed, can be removed