diff --git a/app/assets/images/codespaces/create-a-codespace.cleanshot b/app/assets/images/codespaces/create-a-codespace.cleanshot
new file mode 100644
index 00000000..e3d54cff
Binary files /dev/null and b/app/assets/images/codespaces/create-a-codespace.cleanshot differ
diff --git a/app/assets/images/codespaces/create-a-codespace.png b/app/assets/images/codespaces/create-a-codespace.png
new file mode 100644
index 00000000..fca8aca7
Binary files /dev/null and b/app/assets/images/codespaces/create-a-codespace.png differ
diff --git a/app/assets/images/codespaces/running-codespace.png b/app/assets/images/codespaces/running-codespace.png
new file mode 100644
index 00000000..6de65350
Binary files /dev/null and b/app/assets/images/codespaces/running-codespace.png differ
diff --git a/app/views/how-tos/index.html b/app/views/how-tos/index.html
index fb17a0a5..7676c917 100755
--- a/app/views/how-tos/index.html
+++ b/app/views/how-tos/index.html
@@ -40,7 +40,10 @@
- Step 8 of 8{{[":", operatingSystem ] | join(" ") if operatingSystem }}
+ Step 8 of 8{{[":", installEnvironment ] | join(" ") if installEnvironment }}
Check it works
diff --git a/app/views/install/codespace.html b/app/views/install/codespace.html
new file mode 100644
index 00000000..19690a2a
--- /dev/null
+++ b/app/views/install/codespace.html
@@ -0,0 +1,41 @@
+{% set installEnvironment = "Codespaces" %}
+{% set steps_total = "2" %}
+
+{% extends 'layout.html' %}
+
+{% block beforeContent %}
+ {{ breadcrumb({
+ items: [
+ {
+ href: "/",
+ text: "Home"
+ },
+ {
+ href: "/install/",
+ text: "Get started"
+ }
+ ],
+ href: "/install/codespaces/",
+ text: "Install and use the kit with your web browser"
+ }) }}
+{% endblock %}
+
+{% block content %}
+
+
+
+
+ Step
+ {{ current_step }}
+ of
+ {{ steps_total }}{{[":", installEnvironment ] | join(" ") if installEnvironment }}
+ {% block stepHeader %}{% endblock %}
+
+
+ {% block page_content %}{% endblock %}
+
+ {% block pagination %}{% endblock %}
+
+
+
+{% endblock %}
diff --git a/app/views/install/codespaces/create-a-codespace.html b/app/views/install/codespaces/create-a-codespace.html
new file mode 100644
index 00000000..9d9baf63
--- /dev/null
+++ b/app/views/install/codespaces/create-a-codespace.html
@@ -0,0 +1,84 @@
+{% set installEnvironment = "Codespaces" %}
+{% set current_step = '1' %}
+
+{% block pageTitle %}
+ Create a codespace - NHS prototype kit
+{% endblock %}
+
+{% extends 'install/codespace.html' %}
+
+{% block beforeContent %}
+ {{ breadcrumb({
+ items: [
+ {
+ href: "/",
+ text: "Home"
+ },
+ {
+ href: "/install/codespaces/",
+ text: "Install the kit in your web browser"
+ }
+ ]
+ }) }}
+{% endblock %}
+
+{% block stepHeader %}
+ Create a Codespace
+{% endblock %}
+
+{% block page_content %}
+
+
To use the kit within a Codespace you will first need to create one.
+
+
1. Go to the prototype repository
+
+
Go to the GitHub repository for the prototype you wish to use. For this guide we will be using the
+ NHS prototype kit repository.
+
+
+
If you do not have a prototype repository
+
+
It is not possible right now to install the kit in a new Github repository unless you can install software on your computer.
+
+
You can try using Codespaces with the NHS prototype kit repository. You will not be able to save your progress.
+
+
2. Create a new Codespace
+
+
On every Github repository page is a 'Code' button which is used to get a copy of or to use the code held within the git repository.
+
+
Locate the button, click it, a dialogue box will open, at the top of the dialogue click the 'Codespaces' tab.
+
Next click on the 'Create codespace on main' button. Which will open your new codespace in a new browser tab or window.
+
+
+
The 'Create codespace on main' button will either be shown as a large button or a small plus symbol after the label 'your workspaces in the cloud'.
+
+
3. Wait for the Codespace setup to finish
+
+
The Codespace will open in a new tab (or window) and begin the setup process.
+
+
You will see an interface building with a progress message showing that the space (known as a 'container') is being created or rebuilt.
+
+
This can take between 30 seconds and 5 minutes.
+
+
4. Check that it has worked
+
+
Once the Codespace has been created, you will then see the 'terminal' tab with commands being exectuted to start the prototype kit.
+
When the prototype has started it will open a preview window displaying the homepage of the prototype.
+
+
+
+
+
You now have a copy of the NHS prototype kit installed and running within a new GitHub Codespace.
+
+
This means you can create and edit prototypes entirely in your browser.
+
+{% endblock %}
+
+{% block pagination %}
+ {{ pagination({
+ "previousUrl": "/install/codespaces/index",
+ "previousPage": "Get started",
+ "nextUrl": "/install/codespaces/working-with-codespaces",
+ "nextPage": "Step 2: Working with Codespaces"
+ }) }}
+{% endblock %}
diff --git a/app/views/install/codespaces/index.html b/app/views/install/codespaces/index.html
new file mode 100644
index 00000000..4d008eb7
--- /dev/null
+++ b/app/views/install/codespaces/index.html
@@ -0,0 +1,65 @@
+{% extends 'layout.html' %}
+
+{% block pageTitle %}
+ Install and use the kit with your web browser - NHS prototype kit
+{% endblock %}
+
+{% block beforeContent %}
+ {{ breadcrumb({
+ items: [
+ {
+ href: "/",
+ text: "Home"
+ },
+ {
+ href: "/install/",
+ text: "Get started"
+ }
+ ]
+ }) }}
+{% endblock %}
+
+{% block content %}
+
+
+
+
Install and use the kit with your web browser
+
+
If you cannot install the kit on your computer (for example, because you are not allowed to install Node.js) you can use an online service to edit and run code using your web browser.
+
+
Services that you can use include:
+
+
+
+
For this guide we are using GitHub Codespaces.
+
+
Before you begin
+
+
You do not need any technical knowledge to use this guide.
+
+
You will need a
+ GitHub account.
+
+
+
We will show you how to:
+
+ - set up the Codespace
+
+ - work with the Codespace
+
+
+ Installation usually takes up to 5 minutes.
+
+
+ {{ actionLink({ text: "Start guide for using the kit in a web browser", href: "/install/codespaces/create-a-codespace", classes: "nhsuk-u-margin-top-x nhsuk-heading-l" }) }}
+
+
+
+{% endblock %}
diff --git a/app/views/install/codespaces/working-with-codespaces.html b/app/views/install/codespaces/working-with-codespaces.html
new file mode 100644
index 00000000..baaa6c9d
--- /dev/null
+++ b/app/views/install/codespaces/working-with-codespaces.html
@@ -0,0 +1,66 @@
+{% set installEnvironment = "Codespaces" %}
+{% set current_step = 2 %}
+
+{% block pageTitle %}
+ Editing the kit with Codespaces - NHS prototype kit
+{% endblock %}
+
+{% extends 'install/codespace.html' %}
+
+{% block beforeContent %}
+ {{ breadcrumb({
+ items: [
+ {
+ href: "/",
+ text: "Home"
+ },
+ {
+ href: "/install/codespaces/",
+ text: "Install the kit in your web browser"
+ }
+ ]
+ }) }}
+{% endblock %}
+
+{% block stepHeader %}
+ Editing the kit with Codespaces
+{% endblock %}
+
+{% block page_content %}
+
+
If you are using the browser to edit the kit, you need to manage changes in Codespaces.
+
+
Save changes
+
+
Changes you make are not shared with anybody else until you commit them to Git and push them to the repository.
+
+
You can use the Codespace code editor and user interface to manage changes with GitHub. You can use the
+ quickstart guide for working with Codespaces
+
+
+
Manage prototypes
+
+
When a Codespace is deleted, you will lose any changes you have not commited and pushed to a repository.
+
GitHub Codespaces are automatically deleted after they have been stopped and have remained inactive for a defined number of days, default is 30 days.
+
+
+
+
Publish prototypes online
+
+
Codespaces are temporary and do not usually have passwords. Do not use them to publish your prototypes online.
+
+
Get going
+
+
+ Build a basic prototype
+ or
+ view other guides.
+
+{% endblock %}
+
+{% block pagination %}
+ {{ pagination({
+ "previousUrl": "/install/codespaces/create-a-codespace",
+ "previousPage": "Step 1: Create a Codespace"
+ }) }}
+{% endblock %}
diff --git a/app/views/install/download.html b/app/views/install/download.html
index ef044a88..e8e0af85 100644
--- a/app/views/install/download.html
+++ b/app/views/install/download.html
@@ -28,7 +28,7 @@
- Step 4 of 8{{[":", operatingSystem ] | join(" ") if operatingSystem }}
+ Step 4 of 8{{[":", installEnvironment ] | join(" ") if installEnvironment }}
Download and decide where to keep your prototypes
diff --git a/app/views/install/index.html b/app/views/install/index.html
index dae30b7e..6c605a68 100755
--- a/app/views/install/index.html
+++ b/app/views/install/index.html
@@ -1,39 +1,61 @@
-{% extends 'layout.html' %} {% block pageTitle %} Get started - NHS prototype
-kit {% endblock %} {% block beforeContent %} {{ breadcrumb({ href: "/", text:
-"Home" }) }} {% endblock %} {% block content %}
-
-
-
Get started
+{% extends 'layout.html' %}
-
To use the kit you'll need some basic knowledge of HTML, for example what tags and attributes are and how to copy and paste code.
+{% block pageTitle %}
+ Get started - NHS prototype kit
+{% endblock %}
+
+{% block beforeContent %}
+ {{ breadcrumb({ href: "/", text: "Home" }) }}
+{% endblock %}
+
+{% block content %}
+
-
-{% endblock %}
+{% endblock %}
\ No newline at end of file
diff --git a/app/views/install/mac/check-it-works.html b/app/views/install/mac/check-it-works.html
index f4b1909e..3c2664c3 100644
--- a/app/views/install/mac/check-it-works.html
+++ b/app/views/install/mac/check-it-works.html
@@ -1,4 +1,4 @@
-{% set operatingSystem = "Mac" %}
+{% set installEnvironment = "Mac" %}
{% extends "install/check-it-works.html" %}
diff --git a/app/views/install/mac/download.html b/app/views/install/mac/download.html
index 18de46ff..7ade6c57 100644
--- a/app/views/install/mac/download.html
+++ b/app/views/install/mac/download.html
@@ -1,4 +1,4 @@
-{% set operatingSystem = "Mac" %}
+{% set installEnvironment = "Mac" %}
{% extends "install/download.html" %}
{% block branchingContent %}
diff --git a/app/views/install/mac/node.html b/app/views/install/mac/node.html
index f2b3d517..a498253a 100644
--- a/app/views/install/mac/node.html
+++ b/app/views/install/mac/node.html
@@ -1,4 +1,4 @@
-{% set operatingSystem = "Mac" %}
+{% set installEnvironment = "Mac" %}
{% extends "install/node.html" %}
{% block branchingContent %}
diff --git a/app/views/install/mac/open.html b/app/views/install/mac/open.html
index 95ec4df7..881e7fbf 100644
--- a/app/views/install/mac/open.html
+++ b/app/views/install/mac/open.html
@@ -1,4 +1,4 @@
-{% set operatingSystem = "Mac" %}
+{% set installEnvironment = "Mac" %}
{% extends "install/open.html" %}
{% block branchingContent %}
diff --git a/app/views/install/mac/run.html b/app/views/install/mac/run.html
index ad5c7f8a..4ce5d10f 100644
--- a/app/views/install/mac/run.html
+++ b/app/views/install/mac/run.html
@@ -1,4 +1,4 @@
-{% set operatingSystem = "Mac" %}
+{% set installEnvironment = "Mac" %}
{% extends "install/run.html" %}
{% block branchingContent %}
diff --git a/app/views/install/mac/setup.html b/app/views/install/mac/setup.html
index 9abb9cfb..344010d8 100644
--- a/app/views/install/mac/setup.html
+++ b/app/views/install/mac/setup.html
@@ -1,4 +1,4 @@
-{% set operatingSystem = "Mac" %}
+{% set installEnvironment = "Mac" %}
{% extends "install/setup.html" %}
{% block branchingContent %}
diff --git a/app/views/install/mac/terminal.html b/app/views/install/mac/terminal.html
index ea1fe144..7ad8d84c 100644
--- a/app/views/install/mac/terminal.html
+++ b/app/views/install/mac/terminal.html
@@ -1,4 +1,4 @@
-{% set operatingSystem = "Mac" %}
+{% set installEnvironment = "Mac" %}
{% extends "install/terminal.html" %}
{% block branchingTitle %}
diff --git a/app/views/install/mac/text-editor.html b/app/views/install/mac/text-editor.html
index 5a0f58b4..de03acd7 100644
--- a/app/views/install/mac/text-editor.html
+++ b/app/views/install/mac/text-editor.html
@@ -1,4 +1,4 @@
-{% set operatingSystem = "Mac" %}
+{% set installEnvironment = "Mac" %}
{% extends "install/text-editor.html" %}
{% block pagination %}
diff --git a/app/views/install/node.html b/app/views/install/node.html
index 096bca13..b928e38b 100644
--- a/app/views/install/node.html
+++ b/app/views/install/node.html
@@ -28,7 +28,7 @@
- Step 2 of 8{{[":", operatingSystem ] | join(" ") if operatingSystem }}
+ Step 2 of 8{{[":", installEnvironment ] | join(" ") if installEnvironment }}
Node.js LTS version
diff --git a/app/views/install/open.html b/app/views/install/open.html
index 5d6625dc..4fbd1916 100644
--- a/app/views/install/open.html
+++ b/app/views/install/open.html
@@ -28,7 +28,7 @@
- Step 5 of 8{{[":", operatingSystem ] | join(" ") if operatingSystem }}
+ Step 5 of 8{{[":", installEnvironment ] | join(" ") if installEnvironment }}
Go to your prototype
diff --git a/app/views/install/run.html b/app/views/install/run.html
index dbc893fa..e6ab814a 100644
--- a/app/views/install/run.html
+++ b/app/views/install/run.html
@@ -28,7 +28,7 @@
- Step 7 of 8{{[":", operatingSystem ] | join(" ") if operatingSystem }}
+ Step 7 of 8{{[":", installEnvironment ] | join(" ") if installEnvironment }}
Run the kit
diff --git a/app/views/install/setup.html b/app/views/install/setup.html
index 8c4860a5..a95e13e9 100644
--- a/app/views/install/setup.html
+++ b/app/views/install/setup.html
@@ -28,7 +28,7 @@
- Step 6 of 8{{[":", operatingSystem ] | join(" ") if operatingSystem }}
+ Step 6 of 8{{[":", installEnvironment ] | join(" ") if installEnvironment }}
Setup the kit
diff --git a/app/views/install/terminal.html b/app/views/install/terminal.html
index fd059eaf..dc71147d 100644
--- a/app/views/install/terminal.html
+++ b/app/views/install/terminal.html
@@ -28,7 +28,7 @@
- Step 1 of 8{{[":", operatingSystem ] | join(" ") if operatingSystem }}
+ Step 1 of 8{{[":", installEnvironment ] | join(" ") if installEnvironment }}
{% block branchingHeader %}Terminal{% endblock %}
diff --git a/app/views/install/text-editor.html b/app/views/install/text-editor.html
index ca2d0c2e..6a3c5c2e 100644
--- a/app/views/install/text-editor.html
+++ b/app/views/install/text-editor.html
@@ -28,7 +28,7 @@
- Step 3 of 8{{[":", operatingSystem ] | join(" ") if operatingSystem }}
+ Step 3 of 8{{[":", installEnvironment ] | join(" ") if installEnvironment }}
HTML text editor
diff --git a/app/views/install/windows/check-it-works.html b/app/views/install/windows/check-it-works.html
index dd97afff..3ec3287d 100644
--- a/app/views/install/windows/check-it-works.html
+++ b/app/views/install/windows/check-it-works.html
@@ -1,4 +1,4 @@
-{% set operatingSystem = "Windows" %}
+{% set installEnvironment = "Windows" %}
{% extends "install/check-it-works.html" %}
{% block branchingContent %}
diff --git a/app/views/install/windows/download.html b/app/views/install/windows/download.html
index c981460c..f48c67f0 100644
--- a/app/views/install/windows/download.html
+++ b/app/views/install/windows/download.html
@@ -1,4 +1,4 @@
-{% set operatingSystem = "Windows" %}
+{% set installEnvironment = "Windows" %}
{% extends "install/download.html" %}
{% block branchingContent %}
diff --git a/app/views/install/windows/node.html b/app/views/install/windows/node.html
index f303d2f1..5410f8df 100644
--- a/app/views/install/windows/node.html
+++ b/app/views/install/windows/node.html
@@ -1,4 +1,4 @@
-{% set operatingSystem = "Windows" %}
+{% set installEnvironment = "Windows" %}
{% extends "install/node.html" %}
diff --git a/app/views/install/windows/open.html b/app/views/install/windows/open.html
index c2e66548..bf6f2fcf 100644
--- a/app/views/install/windows/open.html
+++ b/app/views/install/windows/open.html
@@ -1,4 +1,4 @@
-{% set operatingSystem = "Windows" %}
+{% set installEnvironment = "Windows" %}
{% extends "install/open.html" %}
{% block branchingContent %}
diff --git a/app/views/install/windows/run.html b/app/views/install/windows/run.html
index 5ce33aa8..480d1f41 100644
--- a/app/views/install/windows/run.html
+++ b/app/views/install/windows/run.html
@@ -1,4 +1,4 @@
-{% set operatingSystem = "Windows" %}
+{% set installEnvironment = "Windows" %}
{% extends "install/run.html" %}
{% block branchingContent %}
diff --git a/app/views/install/windows/setup.html b/app/views/install/windows/setup.html
index 64615bda..5df5c514 100644
--- a/app/views/install/windows/setup.html
+++ b/app/views/install/windows/setup.html
@@ -1,4 +1,4 @@
-{% set operatingSystem = "Windows" %}
+{% set installEnvironment = "Windows" %}
{% extends "install/setup.html" %}
{% block branchingContent %}
diff --git a/app/views/install/windows/terminal.html b/app/views/install/windows/terminal.html
index 40fd55db..751e9547 100644
--- a/app/views/install/windows/terminal.html
+++ b/app/views/install/windows/terminal.html
@@ -1,4 +1,4 @@
-{% set operatingSystem = "Windows" %}
+{% set installEnvironment = "Windows" %}
{% extends "install/terminal.html" %}
diff --git a/app/views/install/windows/text-editor.html b/app/views/install/windows/text-editor.html
index 37ee8618..e8890534 100644
--- a/app/views/install/windows/text-editor.html
+++ b/app/views/install/windows/text-editor.html
@@ -1,4 +1,4 @@
-{% set operatingSystem = "Windows" %}
+{% set installEnvironment = "Windows" %}
{% extends "install/text-editor.html" %}