- {{ if .code }}
+ {{ if and (.code) (eq .submit "PR") }}
Task code
{{ .code }} - make sure to include this in your PR title or description.
diff --git a/common-theme/layouts/partials/block/issues-list-as-blocks-portal.html b/common-theme/layouts/partials/block/issues-list-as-blocks-portal.html
index 46fbe97f5..e45a3eed1 100644
--- a/common-theme/layouts/partials/block/issues-list-as-blocks-portal.html
+++ b/common-theme/layouts/partials/block/issues-list-as-blocks-portal.html
@@ -2,8 +2,21 @@
{{ $courseName := .course_name }}
{{/* TODO: Update the pages to use the proper module and sprint names from the Portal, rather than doing string manipulation, when we no longer have GitHub equivalents */}}
{{ $repoName := .backlog }}
-{{ $moduleName := substr $repoName (len "Module-") }}
+{{ $moduleName := $repoName }}
+{{ if hasPrefix $repoName "Module-" }}
+ {{ $moduleName = substr $repoName (len "Module-") }}
+{{ end }}
{{ $sprintName := strings.TrimPrefix "📅 " .backlog_filter }}
+
+{{ if eq $moduleName "Welcome" }}
+ {{ $moduleName = "Welcome to Code Your Future" }}
+{{ end }}
+
+{{/* TODO: Remove this when the Testing module is properly published */}}
+{{ if eq $moduleName "Structuring-and-Testing-Data" }}
+ {{ $moduleName = "Structuring and testing data" }}
+{{ end }}
+
{{ if eq $moduleName "Legacy-Code" }}
{{ $moduleName = "Legacy code" }}
{{/* TODO: Remove this when there are actually issues for Legacy Code sprint 2 */}}
@@ -37,7 +50,7 @@
{{ if $time }}
{{ $time = mul $time 60 }}
{{ end }}
- {{ $issueBlocks = $issueBlocks | append (dict "name" .title "src" (printf "portal-issue://%s" .github_html_url) "number" $github_issue_number "labels" $labels "repo" $repoName "body" .body "learning_objectives" .learning_outcomes "time" $time "code" .code "Page" $page) }}
+ {{ $issueBlocks = $issueBlocks | append (dict "name" .title "src" (printf "portal-issue://%s" .github_html_url) "number" $github_issue_number "labels" $labels "repo" $repoName "body" .body "learning_objectives" .learning_outcomes "time" $time "code" .code "submit" .submit "Page" $page) }}
{{ end }}
{{ end }}
{{ end }}
diff --git a/org-cyf-guides/content/contributing/adding-updating/index.md b/org-cyf-guides/content/contributing/adding-updating/index.md
index 18e99f114..05cd60b86 100644
--- a/org-cyf-guides/content/contributing/adding-updating/index.md
+++ b/org-cyf-guides/content/contributing/adding-updating/index.md
@@ -149,5 +149,3 @@ Workshops may also be created in stand-alone repositories if needed.
## Updating Success Criteria
At the sprint level, the [End of Sprint Review](https://curriculum.codeyourfuture.io/itp/data-groups/sprints/1/success/) page lists all learning objectives defined in prep work and backlog exercises. This is generated at build time and does not need to be manually edited. If your learning objectives are not showing up here check they are formatted correctly.
-
-The [End of Module Review](https://curriculum.codeyourfuture.io/itp/data-groups/success/) lists the criteria for passing the module. These criteria are referenced by other teams within the organisation - please **do not edit them** without prior discussion with a member of the core team.
diff --git a/org-cyf/content/itp/data-flows/_index.md b/org-cyf/content/itp/data-flows/_index.md
index c5db87589..3fca99c16 100644
--- a/org-cyf/content/itp/data-flows/_index.md
+++ b/org-cyf/content/itp/data-flows/_index.md
@@ -2,7 +2,7 @@
title = 'Data flows'
description = 'Collaborate in code; Define and manage state; Use asynchronous programming to handle events and data; '
layout = 'module'
-emoji= '🐥'
+emoji= '⛲'
menu = ['itp course schedule']
weight='5'
+++
diff --git a/org-cyf/content/itp/data-flows/project/_index.md b/org-cyf/content/itp/data-flows/project/_index.md
deleted file mode 100644
index 8bb09098c..000000000
--- a/org-cyf/content/itp/data-flows/project/_index.md
+++ /dev/null
@@ -1,6 +0,0 @@
-+++
-title = 'Product'
-description = 'The CYF TV Show Project: build a show browsing site in an asynchronous pair'
-layout = 'product'
-menu_level = ['module']
-+++
diff --git a/org-cyf/content/itp/data-flows/project/backlog/_index.md b/org-cyf/content/itp/data-flows/project/backlog/_index.md
deleted file mode 100644
index 7736bc106..000000000
--- a/org-cyf/content/itp/data-flows/project/backlog/_index.md
+++ /dev/null
@@ -1,7 +0,0 @@
-+++
-title = 'Backlog'
-description = 'All the features that we want to implement in this project'
-layout = 'subdir'
-menu_level = ['product']
-weight=2
-+++
diff --git a/org-cyf/content/itp/data-flows/project/backlog/backlog-1/index.md b/org-cyf/content/itp/data-flows/project/backlog/backlog-1/index.md
deleted file mode 100644
index 952e28ca0..000000000
--- a/org-cyf/content/itp/data-flows/project/backlog/backlog-1/index.md
+++ /dev/null
@@ -1,8 +0,0 @@
-+++
-title = 'backlog for sprint 1'
-layout = 'backlog'
-menu_level = ['subdir']
-weight = 1
-backlog= 'Project-TV-Show'
-backlog_filter= '📅 Sprint 1'
-+++
diff --git a/org-cyf/content/itp/data-flows/project/backlog/backlog-2/index.md b/org-cyf/content/itp/data-flows/project/backlog/backlog-2/index.md
deleted file mode 100644
index 6cefbf220..000000000
--- a/org-cyf/content/itp/data-flows/project/backlog/backlog-2/index.md
+++ /dev/null
@@ -1,8 +0,0 @@
-+++
-title = 'backlog for sprint 2'
-layout = 'backlog'
-menu_level = ['subdir']
-weight = 2
-backlog= 'Project-TV-Show'
-backlog_filter= '📅 Sprint 2'
-+++
diff --git a/org-cyf/content/itp/data-flows/project/backlog/backlog-3/index.md b/org-cyf/content/itp/data-flows/project/backlog/backlog-3/index.md
deleted file mode 100644
index d7b96a498..000000000
--- a/org-cyf/content/itp/data-flows/project/backlog/backlog-3/index.md
+++ /dev/null
@@ -1,8 +0,0 @@
-+++
-title = 'backlog for sprint 3'
-layout = 'backlog'
-menu_level = ['subdir']
-weight = 3
-backlog= 'Project-TV-Show'
-backlog_filter= '📅 Sprint 3'
-+++
diff --git a/org-cyf/content/itp/data-flows/project/prep/index.md b/org-cyf/content/itp/data-flows/project/prep/index.md
deleted file mode 100644
index d67c89994..000000000
--- a/org-cyf/content/itp/data-flows/project/prep/index.md
+++ /dev/null
@@ -1,13 +0,0 @@
-+++
-title = 'Prep'
-description = 'How will you approach this project?'
-layout = 'prep'
-menu_level = ['product']
-weight = 1
-[[blocks]]
-name="Planning and organising your project"
-src="https://github.com/CodeYourFuture/Project-TV-Show/readme"
-[[blocks]]
-name="Setting up"
-src="https://github.com/CodeYourFuture/Project-TV-Show/issues/4"
-+++
diff --git a/org-cyf/content/itp/data-flows/project/success/index.md b/org-cyf/content/itp/data-flows/project/success/index.md
deleted file mode 100644
index ca2d31b9e..000000000
--- a/org-cyf/content/itp/data-flows/project/success/index.md
+++ /dev/null
@@ -1,17 +0,0 @@
-+++
-title = "Success"
-description = "How do we know if our product is a success?"
-layout = "success"
-menu_level = [ "product" ]
-weight = 11
-[[objectives]]
-1= "Your product is deployed on a public URL"
-2= "You have delivered features every sprint"
-3="Your features meet the acceptance criteria"
-4="At least one other person has contributed to the project"
-5="It works"
-+++
-
-{{}}
-You have to build it together, it has to work, and you have to show us.
-{{}}
diff --git a/org-cyf/content/itp/data-flows/sprints/1/backlog/index.md b/org-cyf/content/itp/data-flows/sprints/1/backlog/index.md
index 7f7eaa49f..3cd751a86 100644
--- a/org-cyf/content/itp/data-flows/sprints/1/backlog/index.md
+++ b/org-cyf/content/itp/data-flows/sprints/1/backlog/index.md
@@ -3,6 +3,6 @@ title = 'backlog'
layout = 'backlog'
menu_level = ['sprint']
weight = 2
-backlog= ['Module-Data-Flows', 'Project-TV-Show']
+backlog= 'Data flows'
backlog_filter='📅 Sprint 1'
+++
diff --git a/org-cyf/content/itp/data-flows/sprints/1/success/index.md b/org-cyf/content/itp/data-flows/sprints/1/success/index.md
index 59cb76609..c4d5292cf 100644
--- a/org-cyf/content/itp/data-flows/sprints/1/success/index.md
+++ b/org-cyf/content/itp/data-flows/sprints/1/success/index.md
@@ -3,4 +3,6 @@ title = "End of Sprint Review"
layout = 'success'
menu_level = ['sprint']
weight = 4
+backlog= 'Data flows'
+backlog_filter='📅 Sprint 1'
+++
diff --git a/org-cyf/content/itp/data-flows/sprints/2/backlog/index.md b/org-cyf/content/itp/data-flows/sprints/2/backlog/index.md
index ec08f58b9..cfe2d00a3 100644
--- a/org-cyf/content/itp/data-flows/sprints/2/backlog/index.md
+++ b/org-cyf/content/itp/data-flows/sprints/2/backlog/index.md
@@ -3,6 +3,6 @@ title = 'backlog'
layout = 'backlog'
menu_level = ['sprint']
weight = 2
-backlog= ['Module-Data-Flows', 'Project-TV-Show']
+backlog= 'Data flows'
backlog_filter='📅 Sprint 2'
+++
diff --git a/org-cyf/content/itp/data-flows/sprints/2/success/index.md b/org-cyf/content/itp/data-flows/sprints/2/success/index.md
index 59cb76609..c7c0be252 100644
--- a/org-cyf/content/itp/data-flows/sprints/2/success/index.md
+++ b/org-cyf/content/itp/data-flows/sprints/2/success/index.md
@@ -3,4 +3,6 @@ title = "End of Sprint Review"
layout = 'success'
menu_level = ['sprint']
weight = 4
+backlog= 'Data flows'
+backlog_filter='📅 Sprint 2'
+++
diff --git a/org-cyf/content/itp/data-flows/sprints/3/backlog/index.md b/org-cyf/content/itp/data-flows/sprints/3/backlog/index.md
index af19f11f3..04e96cfbe 100644
--- a/org-cyf/content/itp/data-flows/sprints/3/backlog/index.md
+++ b/org-cyf/content/itp/data-flows/sprints/3/backlog/index.md
@@ -3,6 +3,6 @@ title = 'backlog'
layout = 'backlog'
menu_level = ['sprint']
weight = 2
-backlog= ['Module-Data-Flows', 'Project-TV-Show']
+backlog= 'Data flows'
backlog_filter='📅 Sprint 3'
+++
diff --git a/org-cyf/content/itp/data-flows/sprints/3/success/index.md b/org-cyf/content/itp/data-flows/sprints/3/success/index.md
index 59cb76609..9d7ccedd7 100644
--- a/org-cyf/content/itp/data-flows/sprints/3/success/index.md
+++ b/org-cyf/content/itp/data-flows/sprints/3/success/index.md
@@ -3,4 +3,6 @@ title = "End of Sprint Review"
layout = 'success'
menu_level = ['sprint']
weight = 4
+backlog= 'Data flows'
+backlog_filter='📅 Sprint 3'
+++
diff --git a/org-cyf/content/itp/data-flows/success/index.md b/org-cyf/content/itp/data-flows/success/index.md
deleted file mode 100644
index d8a087b4b..000000000
--- a/org-cyf/content/itp/data-flows/success/index.md
+++ /dev/null
@@ -1,69 +0,0 @@
-+++
-title = "End of Module Review"
-description = 'How do we know if we have completed Data Flows?'
-layout = "success"
-menu_level = [ "module" ]
-weight = 11
-[[objectives]]
-1="Submit step 4 on the CYF Course Portal"
-+++
-
-### 🎯 You've achieved your learning objectives if you can:
-
-```objectives
-- Describe the concept of state, how to use it and what should be stored in it.
-- Identify the state in a problem
-- Use the map function to transform data
-- Create elements in the DOM, using JavaScript
-- Create re-usable components in the DOM
-- Trigger changes by listening to events
-- Fetch data from an API
-- Build a UI that renders content using data stored in state, which can be updated on user interaction
-```
-
-### 💯 To complete _any_ module, you must:
-
-```objectives
-- Do your work: complete all mandatory backlog issues
-- Come to class
-```
-
-## ✅ To complete _this_ module, you must:
-
-## 1. Make a new issue on your own Coursework Planner.
-
- Follow this template for naming your issue:
-
- ` | Data flows | `
-
-
-## 2. On the issue, add:
-
- - A link to the [Codewars Progress Checker](https://codeyourfuture.github.io/Codewars-Progress-Checker/) showing you have completed **all katas** from across the Data Flows CodeWars Collections for [sprint 1](https://github.com/CodeYourFuture/Module-Data-Flows/issues/371), [sprint 2](https://github.com/CodeYourFuture/Module-Data-Flows/issues/372), and [sprint 3](https://github.com/CodeYourFuture/Module-Data-Flows/issues/373).
- Remember: you are also expected to have completed [at least one mentored pair programming session](https://github.com/CodeYourFuture/Module-Data-Flows/issues/37) on this work too.
-
- ---
- - A link to your level 400 and level 500 pull requests for the "[TV Show Project](https://github.com/CodeYourFuture/Project-TV-Show)", to show both you and your partner contributed.
-
- ---
- - A link to your GitHub repository
-
- - A link to your 500 Level Netlify deployment "[TV Show Project](https://github.com/CodeYourFuture/Project-TV-Show)".
-
- ---
- - A link to your _completed_ pull request for "[Book Library Project](https://github.com/CodeYourFuture/Module-Data-Flows/issues/31)".
-
- ---
- - A link to your issue for "[LinkedIn Social Selling Index](https://github.com/CodeYourFuture/Module-Data-Flows/issues/12)". Your issue must show your current index and actions you will take to improve it.
-
- ---
- - A screenshot showing that you [gave a demo in a demo session with particular members of staff present](https://github.com/CodeYourFuture/Module-Data-Flows/issues/323).\
- This must be at a different demo session than any submitted for previous modules.
-
- ---
-## 3. Submit the issue link to step 4 of ITP on [CYF Course Portal](https://application-process.codeyourfuture.io/).
-
-> [!NOTE]
-> A pull request is _completed_ when a volunteer has added the "Complete" tag.
-
-Celebrate your hard work by checking off the objectives below!
diff --git a/org-cyf/content/itp/data-groups/_index.md b/org-cyf/content/itp/data-groups/_index.md
index ad3249252..437f526ba 100644
--- a/org-cyf/content/itp/data-groups/_index.md
+++ b/org-cyf/content/itp/data-groups/_index.md
@@ -2,7 +2,7 @@
title = 'Data groups'
description = 'Organise and structure data; Build interactive user interfaces; Break problems down into sub-problems; Interpret acceptance criteria to form test cases'
layout = 'module'
-emoji= '🐣'
+emoji= '🗃️'
menu = ['itp course schedule']
weight='4'
+++
diff --git a/org-cyf/content/itp/data-groups/sprints/1/backlog/index.md b/org-cyf/content/itp/data-groups/sprints/1/backlog/index.md
index 37062dbb8..20eb9bd0b 100644
--- a/org-cyf/content/itp/data-groups/sprints/1/backlog/index.md
+++ b/org-cyf/content/itp/data-groups/sprints/1/backlog/index.md
@@ -3,6 +3,6 @@ title = 'backlog'
layout = 'backlog'
menu_level = ['sprint']
weight = 2
-backlog= 'Module-Data-Groups'
+backlog= 'Data groups'
backlog_filter='📅 Sprint 1'
+++
diff --git a/org-cyf/content/itp/data-groups/sprints/1/success/index.md b/org-cyf/content/itp/data-groups/sprints/1/success/index.md
index f0e0b758d..d92c01c80 100644
--- a/org-cyf/content/itp/data-groups/sprints/1/success/index.md
+++ b/org-cyf/content/itp/data-groups/sprints/1/success/index.md
@@ -3,6 +3,6 @@ title = "End of Sprint Review"
layout = 'success'
menu_level = ['sprint']
weight = 4
-backlog= 'Module-JS2'
-backlog_filter='📅 Week 1'
+backlog= 'Data groups'
+backlog_filter='📅 Sprint 1'
+++
diff --git a/org-cyf/content/itp/data-groups/sprints/2/backlog/index.md b/org-cyf/content/itp/data-groups/sprints/2/backlog/index.md
index 05fcfd811..79d5d68c6 100644
--- a/org-cyf/content/itp/data-groups/sprints/2/backlog/index.md
+++ b/org-cyf/content/itp/data-groups/sprints/2/backlog/index.md
@@ -3,6 +3,6 @@ title = 'backlog'
layout = 'backlog'
menu_level = ['sprint']
weight = 2
-backlog= 'Module-Data-Groups'
-backlog_filter='📅 Sprint 2'
+backlog = 'Data groups'
+backlog_filter = '📅 Sprint 2'
+++
diff --git a/org-cyf/content/itp/data-groups/sprints/2/success/index.md b/org-cyf/content/itp/data-groups/sprints/2/success/index.md
index 59cb76609..aed7bf860 100644
--- a/org-cyf/content/itp/data-groups/sprints/2/success/index.md
+++ b/org-cyf/content/itp/data-groups/sprints/2/success/index.md
@@ -3,4 +3,6 @@ title = "End of Sprint Review"
layout = 'success'
menu_level = ['sprint']
weight = 4
+backlog = 'Data groups'
+backlog_filter = '📅 Sprint 2'
+++
diff --git a/org-cyf/content/itp/data-groups/sprints/3/backlog/index.md b/org-cyf/content/itp/data-groups/sprints/3/backlog/index.md
index 440638078..ce08c0a49 100644
--- a/org-cyf/content/itp/data-groups/sprints/3/backlog/index.md
+++ b/org-cyf/content/itp/data-groups/sprints/3/backlog/index.md
@@ -3,6 +3,6 @@ title = 'backlog'
layout = 'backlog'
menu_level = ['sprint']
weight = 2
-backlog= 'Module-Data-Groups'
-backlog_filter='📅 Sprint 3'
+backlog = 'Data groups'
+backlog_filter = '📅 Sprint 3'
+++
diff --git a/org-cyf/content/itp/data-groups/sprints/3/success/index.md b/org-cyf/content/itp/data-groups/sprints/3/success/index.md
index 59cb76609..710ebe87e 100644
--- a/org-cyf/content/itp/data-groups/sprints/3/success/index.md
+++ b/org-cyf/content/itp/data-groups/sprints/3/success/index.md
@@ -3,4 +3,6 @@ title = "End of Sprint Review"
layout = 'success'
menu_level = ['sprint']
weight = 4
+backlog = 'Data groups'
+backlog_filter = '📅 Sprint 3'
+++
diff --git a/org-cyf/content/itp/data-groups/success/index.md b/org-cyf/content/itp/data-groups/success/index.md
deleted file mode 100644
index 9df02accb..000000000
--- a/org-cyf/content/itp/data-groups/success/index.md
+++ /dev/null
@@ -1,46 +0,0 @@
-+++
-title = "End of Module Review"
-description = 'How do we know if we have completed Data Groups?'
-layout = 'success'
-menu_level = ['module']
-weight = 11
-[[objectives]]
-1="Submit step 3 on the CYF Course Portal"
-+++
-
-### 🎯 You've achieved your learning objectives if you can:
-
-```objectives
-- Store data in arrays and objects in JavaScript.
-- Access and manipulate data stored in arrays, objects and query parameters.
-- Compare different data types and explain the advantages and limitations of each.
-- Access and manipulate a page using the DOM API.
-```
-
-### 💯 To complete _any_ module, you must:
-
-```objectives
-- Do your work: complete all mandatory backlog issues
-- Come to class
-```
-
-## ✅ To complete _this_ module, you must:
-
-1. Make a new issue on your own Coursework Planner.
- - Follow this template for naming your issue: ` | Data groups | `
-1. On the issue, add:
- - A link to the [Codewars Progress Checker](https://codeyourfuture.github.io/Codewars-Progress-Checker/) showing you have completed **all katas** from across the Data Groups CodeWars Collections for [sprint 1](https://github.com/CodeYourFuture/Module-Data-Groups/issues/936), [sprint 2](https://github.com/CodeYourFuture/Module-Data-Groups/issues/937), and [sprint 3](https://github.com/CodeYourFuture/Module-Data-Groups/issues/938).
- Remember: you are also expected to have completed [at least one mentored pair programming session](https://github.com/CodeYourFuture/Module-Data-Groups/issues/38) on this work too.
- - A link to your _completed_ pull request for "[Alarm Clock App](https://github.com/CodeYourFuture/Module-Data-Groups/issues/26)".
- - A link to your _completed_ pull request for "[Sprint 2 Coursework](https://github.com/CodeYourFuture/Module-Data-Groups/issues/14)".
- - A link to your _completed_ pull request for "[Quote Generator App](https://github.com/CodeYourFuture/Module-Data-Groups/issues/20)".
- - A link to your "[Brag Diary](https://github.com/CodeYourFuture/Module-Data-Groups/issues/10)". (It's ok if this is a private document, you don't need to share it if you don't want to, but please include the link for your own reference).
- - An explanation of how you have used your "[Brag Diary](https://github.com/CodeYourFuture/Module-Data-Groups/issues/10)" to record your progress.
- - A screenshot showing that you [gave a demo in a demo session with particular members of staff present](https://github.com/CodeYourFuture/Module-Data-Groups/issues/794).\
- This must be at a different demo session than any submitted for previous modules.
-1. Submit the issue link to step 3 of ITP on [CYF Course Portal](https://application-process.codeyourfuture.io/).
-
-> [!NOTE]
-> A pull request is _completed_ when a volunteer has added the "Complete" tag.
-
-Celebrate your hard work by checking off the objectives below!
diff --git a/org-cyf/content/itp/guides/timeline/index.md b/org-cyf/content/itp/guides/timeline/index.md
index f775fbb3b..fab2df9b1 100644
--- a/org-cyf/content/itp/guides/timeline/index.md
+++ b/org-cyf/content/itp/guides/timeline/index.md
@@ -16,20 +16,20 @@ So that's your rule of thumb for staying on track. What does this look like in p
Week 1: you have logged in to the dashboard to see your list of learners and welcomed them by name in Slack. You have scheduled your learning weeks in your [classplanner](https://classplanner.codeyourfuture.io/) and your volunteer team has signed up on the schedule so everybody knows the rota.
-## 🤝 Module 1: [Weeks 2, 3, 4](/itp/onboarding)
+## 🤝 Module 1: [Weeks 2, 3, 4](/itp/javascript-fundamentals)
-🤝 Week 2: you have met everyone in person or at Zoomschool
+🤝 Week 2: you have met everyone in class
- Week 2: most people have opened a PR
- Week 2: most people have gotten a code review
🤝 Week 3: 100% of learners have opened a PR or withdrawn/deferred
-🤝 Week 4: Focus on enrollment: 60% of learners have completed the [Onboarding Module](/itp/onboarding) and enrolled as a trainee
+🤝 Week 4: Focus on enrolment: 60% of learners have completed the [JavaScript Fundamentals Module](/itp/javascript-fundamentals) and enrolled as a trainee
-## 🥚 Module 2: [Weeks 5, 6, 7](/itp/structuring-data)
+## 🥚 Module 2: [Weeks 5, 6, 7](/itp/testing)
🥚 Week 5: 60% of learners have enrolled as a trainee
-🥚 Week 6: Everybody has begun [Structuring and Testing Data](/itp/structuring-data) at least as we are halfway through the course!
+🥚 Week 6: Everybody has begun [Testing](/itp/testing) at least as we are halfway through the course!
🥚 Week 7: Focus on step review: keep the momentum going. Advise learners who have made no progress to withdraw as there is no chance of making up the work now.
## 🐣 Module 3: [Weeks 8, 9, 10](/itp/data-groups)
diff --git a/org-cyf/content/itp/javascript-fundamentals/_index.md b/org-cyf/content/itp/javascript-fundamentals/_index.md
new file mode 100644
index 000000000..2b3e2216d
--- /dev/null
+++ b/org-cyf/content/itp/javascript-fundamentals/_index.md
@@ -0,0 +1,8 @@
++++
+title = 'JavaScript Fundamentals'
+description = 'Write your first JavaScript programs; learn more about Git; enrol as a Trainee'
+layout = 'module'
+emoji= '🧱'
+menu = ['itp course schedule']
+weight='2'
++++
diff --git a/org-cyf/content/itp/onboarding/sprints/1/_index.md b/org-cyf/content/itp/javascript-fundamentals/sprints/1/_index.md
similarity index 100%
rename from org-cyf/content/itp/onboarding/sprints/1/_index.md
rename to org-cyf/content/itp/javascript-fundamentals/sprints/1/_index.md
diff --git a/org-cyf/content/itp/onboarding/sprints/1/backlog/index.md b/org-cyf/content/itp/javascript-fundamentals/sprints/1/backlog/index.md
similarity index 76%
rename from org-cyf/content/itp/onboarding/sprints/1/backlog/index.md
rename to org-cyf/content/itp/javascript-fundamentals/sprints/1/backlog/index.md
index 1d942828b..af94544c6 100644
--- a/org-cyf/content/itp/onboarding/sprints/1/backlog/index.md
+++ b/org-cyf/content/itp/javascript-fundamentals/sprints/1/backlog/index.md
@@ -3,6 +3,6 @@ title = 'Backlog'
layout = 'backlog'
menu_level = ['sprint']
weight = 2
-backlog= 'Module-Onboarding'
+backlog= 'JavaScript Fundamentals'
backlog_filter='📅 Sprint 1'
+++
diff --git a/org-cyf/content/itp/onboarding/sprints/1/day-plan/index.md b/org-cyf/content/itp/javascript-fundamentals/sprints/1/day-plan/index.md
similarity index 100%
rename from org-cyf/content/itp/onboarding/sprints/1/day-plan/index.md
rename to org-cyf/content/itp/javascript-fundamentals/sprints/1/day-plan/index.md
diff --git a/org-cyf/content/itp/javascript-fundamentals/sprints/1/prep/index.md b/org-cyf/content/itp/javascript-fundamentals/sprints/1/prep/index.md
new file mode 100644
index 000000000..50930c629
--- /dev/null
+++ b/org-cyf/content/itp/javascript-fundamentals/sprints/1/prep/index.md
@@ -0,0 +1,40 @@
++++
+title = 'Prep'
+layout = 'prep'
+menu_level = ['sprint']
+weight = 1
+[[blocks]]
+name="Do the prep"
+src="module/onboarding/do-the-prep"
+[[blocks]]
+name="Explore"
+src="module/induction/checkout-a-commit"
+[[blocks]]
+name="Previous Versions"
+src="module/induction/previous-versions"
+[[blocks]]
+name="Forking a Repository"
+src="module/induction/forking-a-repository"
+[[blocks]]
+name="Working Locally"
+src="module/induction/working-locally"
+[[blocks]]
+name="Viewing Files"
+src="module/induction/viewing-files"
+[[blocks]]
+name="Branching"
+src="module/induction/branching"
+[[blocks]]
+name="Merging"
+src="module/onboarding/git/merging"
+[[blocks]]
+name="Set up your planner"
+src="module/induction/planner"
+time=45
+[[blocks]]
+name="What are Forms"
+src="module/html-css/what-are-forms"
+[[blocks]]
+name="Backlog"
+src="blocks/backlog"
++++
diff --git a/org-cyf/content/itp/onboarding/sprints/1/success/index.md b/org-cyf/content/itp/javascript-fundamentals/sprints/1/success/index.md
similarity index 58%
rename from org-cyf/content/itp/onboarding/sprints/1/success/index.md
rename to org-cyf/content/itp/javascript-fundamentals/sprints/1/success/index.md
index f6933969e..40b61097c 100644
--- a/org-cyf/content/itp/onboarding/sprints/1/success/index.md
+++ b/org-cyf/content/itp/javascript-fundamentals/sprints/1/success/index.md
@@ -3,6 +3,6 @@ title = "End of Sprint Review"
layout = 'success'
menu_level = ['sprint']
weight = 4
-backlog= 'Module-HTML-CSS'
-backlog_filter='📅 Week 1'
+backlog= 'JavaScript Fundamentals'
+backlog_filter='📅 Sprint 1'
+++
diff --git a/org-cyf/content/itp/onboarding/sprints/2/_index.md b/org-cyf/content/itp/javascript-fundamentals/sprints/2/_index.md
similarity index 68%
rename from org-cyf/content/itp/onboarding/sprints/2/_index.md
rename to org-cyf/content/itp/javascript-fundamentals/sprints/2/_index.md
index 6b845e096..37b20027d 100644
--- a/org-cyf/content/itp/onboarding/sprints/2/_index.md
+++ b/org-cyf/content/itp/javascript-fundamentals/sprints/2/_index.md
@@ -4,7 +4,7 @@ description = 'The plan for the sprint'
layout = 'sprint'
menu_level = ['module']
weight = 3
-theme = "Collecting and formatting data"
+theme = "Storing values in variables; conditional logic"
+++
diff --git a/org-cyf/content/itp/onboarding/sprints/2/backlog/index.md b/org-cyf/content/itp/javascript-fundamentals/sprints/2/backlog/index.md
similarity index 63%
rename from org-cyf/content/itp/onboarding/sprints/2/backlog/index.md
rename to org-cyf/content/itp/javascript-fundamentals/sprints/2/backlog/index.md
index e3fb8efd9..3e9ac352e 100644
--- a/org-cyf/content/itp/onboarding/sprints/2/backlog/index.md
+++ b/org-cyf/content/itp/javascript-fundamentals/sprints/2/backlog/index.md
@@ -1,8 +1,8 @@
+++
-title = 'backlog'
+title = 'Backlog'
layout = 'backlog'
menu_level = ['sprint']
weight = 2
-backlog= 'Module-Onboarding'
+backlog= 'JavaScript Fundamentals'
backlog_filter='📅 Sprint 2'
+++
diff --git a/org-cyf/content/itp/onboarding/sprints/2/day-plan/index.md b/org-cyf/content/itp/javascript-fundamentals/sprints/2/day-plan/index.md
similarity index 97%
rename from org-cyf/content/itp/onboarding/sprints/2/day-plan/index.md
rename to org-cyf/content/itp/javascript-fundamentals/sprints/2/day-plan/index.md
index 66477e5ec..b4b14f68b 100644
--- a/org-cyf/content/itp/onboarding/sprints/2/day-plan/index.md
+++ b/org-cyf/content/itp/javascript-fundamentals/sprints/2/day-plan/index.md
@@ -1,5 +1,5 @@
+++
-title = 'day-plan'
+title = 'Day Plan'
layout = 'day-plan'
menu_level = ['sprint']
weight = 3
diff --git a/org-cyf/content/itp/javascript-fundamentals/sprints/2/prep/index.md b/org-cyf/content/itp/javascript-fundamentals/sprints/2/prep/index.md
new file mode 100644
index 000000000..9a7fc7de7
--- /dev/null
+++ b/org-cyf/content/itp/javascript-fundamentals/sprints/2/prep/index.md
@@ -0,0 +1,57 @@
++++
+title = 'Prep'
+layout = 'prep'
+menu_level = ['sprint']
+weight = 1
+[[blocks]]
+name="Install a unix based os"
+src="module/js1/check-unix-os"
+[[blocks]]
+name="Install Node"
+src="module/js1/install-node"
+[[blocks]]
+name="Define a computer"
+src="module/js1/define-computer"
+[[blocks]]
+name="Interface"
+src="module/js1/interface"
+[[blocks]]
+name="Terminal"
+src="module/js1/terminal"
+[[blocks]]
+name="Prep Directory"
+src="blocks/prep-dir"
+[[blocks]]
+name="Scripts"
+src="module/js1/scripts"
+[[blocks]]
+name="Data"
+src="module/js1/data"
+[[blocks]]
+name="Variables"
+src="module/js1/variables"
+[[blocks]]
+src="module/js1/comparison"
+name="Comparison"
+[[blocks]]
+src="module/js1/strategy"
+name="Strategy"
+[[blocks]]
+src="module/js1/conditionality"
+name="Conditionality"
+[[blocks]]
+name="Errors"
+src="module/js1/errors"
+[[blocks]]
+src="module/js1/interpreting-errors"
+name="Interpreting errors"
+[[blocks]]
+src="module/js1/interpreting-this-error"
+name="Interpreting this error"
+[[blocks]]
+src="module/js1/fixing-the-error"
+name="Fixing the error"
+[[blocks]]
+name="Backlog"
+src="blocks/backlog"
++++
diff --git a/org-cyf/content/itp/onboarding/sprints/3/success/index.md b/org-cyf/content/itp/javascript-fundamentals/sprints/2/success/index.md
similarity index 58%
rename from org-cyf/content/itp/onboarding/sprints/3/success/index.md
rename to org-cyf/content/itp/javascript-fundamentals/sprints/2/success/index.md
index 3efd4d05c..c811ed8ac 100644
--- a/org-cyf/content/itp/onboarding/sprints/3/success/index.md
+++ b/org-cyf/content/itp/javascript-fundamentals/sprints/2/success/index.md
@@ -3,6 +3,6 @@ title = "End of Sprint Review"
layout = 'success'
menu_level = ['sprint']
weight = 4
-backlog= 'Module-HTML-CSS'
-backlog_filter='📅 Week 3'
+backlog= 'JavaScript Fundamentals'
+backlog_filter='📅 Sprint 2'
+++
diff --git a/org-cyf/content/itp/onboarding/sprints/3/_index.md b/org-cyf/content/itp/javascript-fundamentals/sprints/3/_index.md
similarity index 70%
rename from org-cyf/content/itp/onboarding/sprints/3/_index.md
rename to org-cyf/content/itp/javascript-fundamentals/sprints/3/_index.md
index e6ae91a81..100248cda 100644
--- a/org-cyf/content/itp/onboarding/sprints/3/_index.md
+++ b/org-cyf/content/itp/javascript-fundamentals/sprints/3/_index.md
@@ -4,7 +4,7 @@ description = 'The plan for the sprint'
layout = 'sprint'
menu_level = ['module']
weight = 4
-theme = "Querying data, considering presentation"
+theme = "Reusing code with functions"
+++
diff --git a/org-cyf/content/itp/onboarding/sprints/3/backlog/index.md b/org-cyf/content/itp/javascript-fundamentals/sprints/3/backlog/index.md
similarity index 63%
rename from org-cyf/content/itp/onboarding/sprints/3/backlog/index.md
rename to org-cyf/content/itp/javascript-fundamentals/sprints/3/backlog/index.md
index 797546ec6..a5e10c0ed 100644
--- a/org-cyf/content/itp/onboarding/sprints/3/backlog/index.md
+++ b/org-cyf/content/itp/javascript-fundamentals/sprints/3/backlog/index.md
@@ -1,8 +1,8 @@
+++
-title = 'backlog'
+title = 'Backlog'
layout = 'backlog'
menu_level = ['sprint']
weight = 2
-backlog= 'Module-Onboarding'
+backlog= 'JavaScript Fundamentals'
backlog_filter='📅 Sprint 3'
+++
diff --git a/org-cyf/content/itp/onboarding/sprints/3/day-plan/index.md b/org-cyf/content/itp/javascript-fundamentals/sprints/3/day-plan/index.md
similarity index 85%
rename from org-cyf/content/itp/onboarding/sprints/3/day-plan/index.md
rename to org-cyf/content/itp/javascript-fundamentals/sprints/3/day-plan/index.md
index d9fe62634..882fadcc1 100644
--- a/org-cyf/content/itp/onboarding/sprints/3/day-plan/index.md
+++ b/org-cyf/content/itp/javascript-fundamentals/sprints/3/day-plan/index.md
@@ -1,26 +1,26 @@
+++
-title = 'day-plan'
+title = 'Day Plan'
layout = 'day-plan'
menu_level = ['sprint']
weight = 3
[[blocks]]
+name="Morning orientation"
+src="blocks/morning-orientation"
+time=15
+[[blocks]]
name="Energiser"
src="energisers/start-thinking-of-your-own"
[[blocks.nested.blocks]]
name="Energiser: Telephone!"
src="energisers/telephone"
[[blocks]]
-name="Morning orientation"
-src="blocks/morning-orientation"
-time=15
-[[blocks]]
-name="Workshop: Developer Tools"
-src="workshops/devtools/"
-time="115"
+name="Problem Solving Workshop"
+src="https://codewars-workshops.codeyourfuture.io/problem-01/"
+time="90"
[[blocks]]
name="Workshop: Interview Introductions"
src="workshops/interview-introductions/"
-time="30"
+time="55"
[[blocks]]
name="lunch"
src="blocks/lunch"
diff --git a/org-cyf/content/itp/javascript-fundamentals/sprints/3/prep/index.md b/org-cyf/content/itp/javascript-fundamentals/sprints/3/prep/index.md
new file mode 100644
index 000000000..63755d5a2
--- /dev/null
+++ b/org-cyf/content/itp/javascript-fundamentals/sprints/3/prep/index.md
@@ -0,0 +1,43 @@
++++
+title = 'Prep'
+layout = 'prep'
+menu_level = ['sprint']
+weight = 1
+[[blocks]]
+name="Enroll as a Trainee"
+src="https://github.com/CodeYourFuture/Module-JavaScript-Fundamentals/issues/72"
+time=30
+[[blocks]]
+name="Learn about Interview Introductions"
+src="module/induction/interview-introductions"
+[[blocks]]
+name="Functions"
+src="module/js1/functions"
+[[blocks]]
+name="Planning a function"
+src="module/onboarding/pseudocode"
+[[blocks]]
+name="Defining functions"
+src="module/js1/declaring-functions"
+[[blocks]]
+name="Scope"
+src="module/js1/scope"
+[[blocks]]
+name="Return"
+src="module/js1/return"
+[[blocks]]
+name="Parameters"
+src="module/js1/parameters"
+[[blocks]]
+name="Refactoring"
+src="module/js1/refactoring"
+[[blocks]]
+name="Undoing a Commit"
+src="module/onboarding/git/undoing-a-commit"
+[[blocks]]
+name="Ignoring Files"
+src="module/onboarding/git/ignoring-files"
+[[blocks]]
+name="Backlog"
+src="blocks/backlog"
++++
diff --git a/org-cyf/content/itp/onboarding/sprints/2/success/index.md b/org-cyf/content/itp/javascript-fundamentals/sprints/3/success/index.md
similarity index 58%
rename from org-cyf/content/itp/onboarding/sprints/2/success/index.md
rename to org-cyf/content/itp/javascript-fundamentals/sprints/3/success/index.md
index d8fa67153..f42f19ab1 100644
--- a/org-cyf/content/itp/onboarding/sprints/2/success/index.md
+++ b/org-cyf/content/itp/javascript-fundamentals/sprints/3/success/index.md
@@ -3,6 +3,6 @@ title = "End of Sprint Review"
layout = 'success'
menu_level = ['sprint']
weight = 4
-backlog= 'Module-HTML-CSS'
-backlog_filter='📅 Week 2'
+backlog= 'JavaScript Fundamentals'
+backlog_filter='📅 Sprint 3'
+++
diff --git a/org-cyf/content/itp/onboarding/_index.md b/org-cyf/content/itp/onboarding/_index.md
index 8f7d1889a..4f117d7b6 100644
--- a/org-cyf/content/itp/onboarding/_index.md
+++ b/org-cyf/content/itp/onboarding/_index.md
@@ -1,8 +1,10 @@
+++
title = 'Onboarding'
-description = 'Evaluate and fix code with Lighthouse; use version control with Git and GitHub; Plan your study and set goals; Enroll as a Trainee'
+description = 'Learn about the tools you will use at CYF'
layout = 'module'
emoji= '🫱🏾🫲🏿'
menu = ['itp course schedule']
-weight='2'
+weight='1'
+parentsToTraverseToModule = 0
+moduleForRegister = "Welcome"
+++
diff --git a/org-cyf/content/itp/onboarding/backlog/creating-a-commit/index.md b/org-cyf/content/itp/onboarding/backlog/creating-a-commit/index.md
new file mode 100644
index 000000000..a79ac9802
--- /dev/null
+++ b/org-cyf/content/itp/onboarding/backlog/creating-a-commit/index.md
@@ -0,0 +1,187 @@
++++
+title = "Creating a Commit"
+time = 25
+[tasks]
+1 = "Initialize a new Git repository"
+2 = "Create and modify files in your repository"
+3 = "Stage changes for commit"
+4 = "Create your first commit"
+5 = "View your commit history"
+[build]
+ render = 'never'
+ list = 'local'
+ publishResources = false
++++
+
+A **commit** is a saved version of your project at a particular moment in time. Think of it like saving a document, but with a detailed message explaining what changed and why.
+
+## Understanding the Three States
+
+Git has three states for your files:
+
+1. **Modified** - You changed the file, but haven't saved the version yet
+2. **Staged** - You've marked the file as ready to be saved
+3. **Committed** - The file is now saved in Git history
+
+```
+Working Directory → Staging Area → Git Repository
+ (Modified) (Staged) (Committed)
+```
+
+## Step 1: Create a New Repository
+
+A repository is a folder where Git tracks all your files and their changes.
+
+1. Create a new folder for your project:
+ ```
+ mkdir my-first-project
+ cd my-first-project
+ ```
+
+2. Initialize Git in this folder:
+ ```
+ git init
+ ```
+
+You should see: "Initialized empty Git repository"
+
+{{}}
+1. Open your terminal
+2. Navigate to your Documents or Desktop folder
+3. Run the commands above
+4. You've created your first Git repository! 🎉
+{{}}
+
+## Step 2: Create a File and Make Changes
+
+Let's create a simple text file:
+
+1. In VSCode, create a new file called `notes.txt`
+2. Add some text:
+ ```
+ My First Git Project
+
+ Today I'm learning Git!
+ This is my first commit.
+ ```
+3. Save the file
+
+## Step 3: Check the Status of Your Repository
+
+Before making a commit, let's see what Git sees:
+
+```
+git status
+```
+
+You should see output like:
+```
+On branch main
+
+No commits yet
+
+Untracked files:
+ (use "git add ..." to include in what will be committed)
+ notes.txt
+
+nothing added to commit but untracked files present
+```
+
+Git is saying: "I see a file called `notes.txt`, but you haven't told me to track it yet."
+
+## Step 4: Stage Your Changes
+
+Now we tell Git we want to save this file. This is called **staging**:
+
+```
+git add notes.txt
+```
+
+You can also stage all files at once:
+```
+git add .
+```
+
+Check the status again:
+```
+git status
+```
+
+Now you should see:
+```
+Changes to be committed:
+ (use "git rm --cached ..." to unstage)
+ new file: notes.txt
+```
+
+Git is saying: "I'm ready to save this file. Are you sure?"
+
+## Step 5: Create Your First Commit
+
+Now we actually save the version:
+
+```
+git commit -m "Add initial project notes"
+```
+
+The `-m` flag means "message". The message describes what you changed.
+
+{{}}
+Write messages that explain **what** you changed and **why**:
+- ✅ Good: "Add login button to homepage"
+- ✅ Good: "Fix bug where users can't save files"
+- ❌ Avoid: "stuff", "changes", "update"
+
+Keep messages short but clear (under 50 characters is ideal).
+{{}}
+
+## Step 6: View Your Commit History
+
+See all the commits in your repository:
+
+```
+git log
+```
+
+You should see your commit with:
+- Your name and email
+- The date and time
+- Your commit message
+
+Press `q` to exit the log.
+
+## Workflow Summary
+
+Here's the complete workflow for making commits:
+
+1. **Modify files** in your editor
+2. **Check status**: `git status`
+3. **Stage changes**: `git add .`
+4. **Create commit**: `git commit -m "Your message"`
+5. **View history**: `git log`
+
+{{}}
+1. Create a new file called `planning.txt`
+2. Add some text to it
+3. Save it
+4. Run: `git add planning.txt`
+5. Run: `git commit -m "Add project planning document"`
+6. Run: `git log` to see both commits
+{{}}
+
+## Common Commands
+
+| Command | What it does |
+|---------|------------|
+| `git status` | Shows which files have changed |
+| `git add ` | Stages a specific file |
+| `git add .` | Stages all changed files |
+| `git commit -m "message"` | Creates a commit with a message |
+| `git log` | Shows all commits in order |
+| `git diff` | Shows exactly what changed in files |
+
+## Further Reading
+
+- [Atlassian - Git Commit](https://www.atlassian.com/git/tutorials/saving-changes/git-commit)
+- [GitHub Docs - Recording Changes](https://docs.github.com/en/get-started/using-git/about-git)
+```
\ No newline at end of file
diff --git a/org-cyf/content/itp/welcome/backlog/index.md b/org-cyf/content/itp/onboarding/backlog/index.md
similarity index 84%
rename from org-cyf/content/itp/welcome/backlog/index.md
rename to org-cyf/content/itp/onboarding/backlog/index.md
index cb46b25b9..c7b84c10d 100644
--- a/org-cyf/content/itp/welcome/backlog/index.md
+++ b/org-cyf/content/itp/onboarding/backlog/index.md
@@ -4,6 +4,6 @@ description = "Tasks to attempt before coming to class"
layout = "backlog"
menu_level = ["module"]
weight = 2
-backlog = "Module-Welcome"
+backlog = "Onboarding"
backlog_filter = "📅 Sprint 1"
-+++
++++
\ No newline at end of file
diff --git a/org-cyf/content/itp/onboarding/backlog/pushing-and-pulling/index.md b/org-cyf/content/itp/onboarding/backlog/pushing-and-pulling/index.md
new file mode 100644
index 000000000..5a5919662
--- /dev/null
+++ b/org-cyf/content/itp/onboarding/backlog/pushing-and-pulling/index.md
@@ -0,0 +1,186 @@
++++
+title = "Pushing & Pulling"
+time = 25
+[tasks]
+1 = "Push your commits to GitHub"
+2 = "View your commits on GitHub"
+3 = "Make changes and push again"
+4 = "Understand pull and push workflow"
+[build]
+ render = 'never'
+ list = 'local'
+ publishResources = false
++++
+
+Now that your local and remote repositories are connected, you need to learn how to synchronize them. **Pushing** sends your local commits to GitHub, and **pulling** gets updates from GitHub.
+
+## The Git Workflow
+
+```
+1. Make changes locally
+ ↓
+2. Commit changes
+ ↓
+3. Push to GitHub
+ ↓
+4. Your code is now on GitHub!
+```
+
+## Step 1: Push Your Commits to GitHub
+
+You have commits on your local machine, but they're not on GitHub yet. Let's send them:
+
+```
+git push -u origin main
+```
+
+What does this mean?
+- `git push` - Send commits to a remote
+- `-u` - Set up tracking (remember this remote/branch combo)
+- `origin` - Push to the remote named "origin" (GitHub)
+- `main` - Push to the "main" branch
+
+You might be asked to authenticate. Follow GitHub's instructions.
+
+{{}}
+The `-u` flag is only needed the first time. After that, you can just type: `git push`
+{{}}
+
+## Step 2: View Your Code on GitHub
+
+1. Go to your repository on GitHub (https://github.com/YOUR-USERNAME/my-first-project)
+2. You should see your files!
+3. Click on a file to view its contents
+4. Click the "History" button (clock icon) to see commits
+
+Congratulations! Your code is now on GitHub and you have a portfolio piece! 🎉
+
+## Step 3: Make Changes and Push Again
+
+The workflow for subsequent changes is simpler:
+
+1. Modify a file (e.g., add more text to `notes.txt`)
+2. Commit the change:
+ ```
+ git add notes.txt
+ git commit -m "Update project notes"
+ ```
+3. Push to GitHub:
+ ```
+ git push
+ ```
+
+That's it! Your changes are now on GitHub.
+
+{{}}
+1. Open `planning.txt` in VSCode
+2. Add more content to it
+3. Save the file
+4. Run: `git add planning.txt`
+5. Run: `git commit -m "Expand project planning"`
+6. Run: `git push`
+7. Go to GitHub and refresh to see your changes!
+{{}}
+
+## Understanding Push and Pull
+
+### Push (Send to GitHub)
+
+```
+Your Computer (local) GitHub (remote)
+ Commits ──push──→ Commits
+ (backup)
+```
+
+When you push, GitHub gets a copy of your commits.
+
+### Pull (Get from GitHub)
+
+```
+Your Computer (local) GitHub (remote)
+ Commits ←─pull──── Commits
+ (updates)
+```
+
+When you pull, you get any commits that were made on GitHub (or by teammates).
+
+{{}}
+In a team project, other developers might push commits to GitHub. You need to pull regularly to keep your local copy up to date.
+{{}}
+
+## Complete Workflow Example
+
+Here's a day in the life of a developer:
+
+```
+Morning:
+1. git pull (get latest from team)
+
+During the day (multiple times):
+2. Make changes
+3. git add .
+4. git commit -m "description"
+5. git push (share with team)
+
+Before leaving:
+6. git push (make sure everything is saved)
+```
+
+## Troubleshooting
+
+**"Nothing to push"**
+You have no new commits. This is fine! It means your local and remote are in sync.
+
+**"Rejected"**
+This usually means someone else pushed changes. Run `git pull` first, then `git push`.
+
+**"Permission denied"**
+Check that you're logged into the right GitHub account.
+
+## Common Commands
+
+| Command | What it does |
+|---------|------------|
+| `git push` | Send commits to GitHub |
+| `git pull` | Get commits from GitHub |
+| `git status` | Check if local and remote are in sync |
+| `git log` | See all commits |
+| `git fetch` | Check for updates without merging |
+
+## The Complete Git Journey
+
+You now know:
+- ✅ How to configure Git
+- ✅ How to make commits (save versions)
+- ✅ How to connect to GitHub (remote)
+- ✅ How to push commits to GitHub
+- ✅ How to pull updates from GitHub
+
+**You're ready to:**
+- Build projects and track changes
+- Share code with others
+- Build a portfolio on GitHub
+- Work in teams
+
+## Common Mistakes to Avoid
+
+1. **Forgetting to push** - Your commits are local only, not on GitHub
+2. **Forgetting to commit** - You made changes but didn't save the version
+3. **Wrong branch** - Always check you're on "main" with `git branch`
+4. **Large files** - Don't commit videos, databases, or node_modules
+5. **Secrets** - Never commit passwords or API keys
+
+## What to Practice
+
+1. Create 3-5 small projects locally
+2. Push each one to GitHub
+3. Make changes and push again
+4. Get comfortable with the push/pull workflow
+
+## Further Reading
+
+- [Atlassian - Git Push](https://www.atlassian.com/git/tutorials/syncing/git-push)
+- [Atlassian - Git Pull](https://www.atlassian.com/git/tutorials/syncing/git-pull)
+- [GitHub Docs - Pushing Commits](https://docs.github.com/en/get-started/using-git/pushing-commits-to-a-remote-repository)
+- [GitHub Docs - Pulling Changes](https://docs.github.com/en/get-started/using-git/getting-changes-from-a-remote-repository)
+```
\ No newline at end of file
diff --git a/org-cyf/content/itp/onboarding/backlog/remote-repositories/index.md b/org-cyf/content/itp/onboarding/backlog/remote-repositories/index.md
new file mode 100644
index 000000000..e108be663
--- /dev/null
+++ b/org-cyf/content/itp/onboarding/backlog/remote-repositories/index.md
@@ -0,0 +1,135 @@
++++
+title = "Remote Repositories"
+time = 20
+[tasks]
+1 = "Understand what a remote repository is"
+2 = "Create a new repository on GitHub"
+3 = "Connect your local repository to GitHub"
+4 = "Verify the connection"
+[build]
+ render = 'never'
+ list = 'local'
+ publishResources = false
++++
+
+So far, your commits are saved on your computer. A **remote repository** is a copy of your project stored on a server (like GitHub), so others can access it and you have a backup.
+
+## Why Use Remote Repositories?
+
+1. **Backup** - Your code is safe on GitHub's servers
+2. **Collaboration** - Other developers can access your code
+3. **Portfolio** - Employers can see your work on your GitHub profile
+4. **Team projects** - Work together on the same codebase
+
+## Local vs Remote
+
+```
+Your Computer GitHub Server
+┌─────────────────────┐ ┌──────────────────┐
+│ Local Repository │ │ Remote Repository │
+│ (your commits) │ ← │ (backup) │
+└─────────────────────┘ → └──────────────────┘
+ "pull" "push"
+```
+
+## Step 1: Create a Repository on GitHub
+
+1. Go to [https://github.com](https://github.com)
+2. Click the **+** icon in the top right
+3. Select **"New repository"**
+4. Give it a name (e.g., `my-first-project`)
+5. Add a description (optional)
+6. Choose **"Public"** (so your portfolio is visible)
+7. **Don't** initialize with README, .gitignore, or license
+8. Click **"Create repository"**
+
+{{}}
+If you initialize with files on GitHub, your local and remote repositories will be different, which causes conflicts. Since we already have commits locally, we'll connect them directly.
+{{}}
+
+## Step 2: Add the Remote Connection
+
+GitHub will show you a page with instructions. You need to tell your local Git about this remote repository.
+
+In your terminal, run:
+
+```
+git remote add origin https://github.com/YOUR-USERNAME/my-first-project.git
+```
+
+Replace `YOUR-USERNAME` with your GitHub username and `my-first-project` with your repository name.
+
+**What does this do?**
+- `git remote add` - Add a new remote
+- `origin` - The name of the remote (default name)
+- The URL - Where the remote repository lives
+
+## Step 3: Verify the Connection
+
+Check that the connection was made:
+
+```
+git remote -v
+```
+
+You should see:
+```
+origin https://github.com/YOUR-USERNAME/my-first-project.git (fetch)
+origin https://github.com/YOUR-USERNAME/my-first-project.git (push)
+```
+
+This means your local repository knows how to reach GitHub!
+
+## Step 4: Set Your Default Branch
+
+By default, Git uses "main" as the primary branch. Let's set this:
+
+```
+git branch -M main
+```
+
+## Understanding "origin" and "main"
+
+- **origin** - The name of your remote repository (GitHub)
+- **main** - The name of your default branch (like the main storyline of your project)
+
+Think of it like:
+- You have a story (your project)
+- It lives in two places: Your notebook (local) and a backup server (origin/main)
+
+{{}}
+A branch is like an alternative version of your project. Most projects have a "main" branch (the stable version) and feature branches (experimental versions). For now, you'll only use "main".
+{{}}
+
+## Checking Your Remote
+
+If you ever want to see details about your remote:
+
+```
+git remote show origin
+```
+
+## What's Next?
+
+Now that your repositories are connected, you're ready to:
+- **Push** - Send your local commits to GitHub
+- **Pull** - Get updates from GitHub
+- **Collaborate** - Work with other developers
+
+You'll learn these in the next module!
+
+## Common Commands
+
+| Command | What it does |
+|---------|------------|
+| `git remote add origin ` | Connect local repo to GitHub |
+| `git remote -v` | Show all remote connections |
+| `git remote show origin` | Show details about origin |
+| `git branch -M main` | Set main as default branch |
+
+## Further Reading
+
+- [GitHub Docs - Adding a Repository](https://docs.github.com/en/migrations/importing-your-projects-to-github/importing-a-repository-with-github-importer)
+- [Atlassian - Git Remote](https://www.atlassian.com/git/tutorials/syncing)
+- [GitHub Docs - Managing Remote Repositories](https://docs.github.com/en/get-started/getting-started-with-git/managing-remote-repositories)
+```
\ No newline at end of file
diff --git a/org-cyf/content/itp/welcome/day-plan/index.md b/org-cyf/content/itp/onboarding/day-plan/index.md
similarity index 92%
rename from org-cyf/content/itp/welcome/day-plan/index.md
rename to org-cyf/content/itp/onboarding/day-plan/index.md
index eb113a9a2..7737f4d4c 100644
--- a/org-cyf/content/itp/welcome/day-plan/index.md
+++ b/org-cyf/content/itp/onboarding/day-plan/index.md
@@ -40,7 +40,11 @@ time=25
[[blocks]]
name="Blockers! Getting Unstuck"
src="module/onboarding/blockers"
-time=75
+time=25
+[[blocks]]
+name="Practising Git Fundamentals"
+src="workshops/git-fundamentals"
+time=50
[[blocks]]
name="Afternoon break"
src="blocks/afternoon-break"
diff --git a/org-cyf/content/itp/onboarding/prep/index.md b/org-cyf/content/itp/onboarding/prep/index.md
new file mode 100644
index 000000000..98a55574b
--- /dev/null
+++ b/org-cyf/content/itp/onboarding/prep/index.md
@@ -0,0 +1,69 @@
++++
+title = 'Prep'
+description = 'What to do before you come to class'
+layout = 'prep'
+theme = "Getting to know how the course works"
+menu_level = ['module']
+weight = 1
+[[blocks]]
+name="Application"
+src="module/onboarding/application"
+[[blocks]]
+name="Course Portal"
+src="module/onboarding/course-portal"
+[[blocks]]
+name="Notes"
+src="module/onboarding/notes"
+[[blocks]]
+name="Goals"
+src="module/onboarding/goals"
+[[blocks]]
+name="Expectations"
+src="module/onboarding/expectations"
+[[blocks]]
+name="Acceptable AI Use"
+src="module/onboarding/itp-ai-use"
+[[blocks]]
+name="Help"
+src="module/onboarding/help"
+[[blocks]]
+name="Preparation"
+src="module/onboarding/preparation"
+[[blocks]]
+name="Creating Accounts & Installing Tools"
+src="module/induction/accounts"
+[[blocks]]
+name="House Rules"
+src="blocks/house-rules"
+[[blocks]]
+name="Create CYF Folder"
+src="module/induction/cyf-folder"
+[[blocks]]
+name="Check Git Installation"
+src="module/induction/check-git-installation"
+time=5
+[[blocks]]
+name="CYF Blog"
+src="module/induction/cyf-blog"
+[[blocks]]
+name="Development Process"
+src="module/induction/development-process"
+[[blocks]]
+name="Version Control"
+src="module/induction/version-control"
+[[blocks]]
+name="Sharing History"
+src="module/induction/sharing-history"
+[[blocks]]
+name="Configuring Git with VSCode"
+src="module/onboarding/git/configuring-git-vscode"
+[[blocks]]
+name="Creating a Commit"
+src="module/onboarding/git/creating-a-commit"
+[[blocks]]
+name="Remote Repositories"
+src="module/onboarding/git/remote-repositories"
+[[blocks]]
+name="Pushing & Pulling"
+src="module/onboarding/git/pushing-and-pulling"
++++
diff --git a/org-cyf/content/itp/onboarding/sprints/1/prep/index.md b/org-cyf/content/itp/onboarding/sprints/1/prep/index.md
deleted file mode 100644
index fe2633f02..000000000
--- a/org-cyf/content/itp/onboarding/sprints/1/prep/index.md
+++ /dev/null
@@ -1,78 +0,0 @@
-+++
-title = 'Prep'
-layout = 'prep'
-menu_level = ['sprint']
-weight = 1
-[[blocks]]
-name="Do the prep"
-src="module/onboarding/do-the-prep"
-[[blocks]]
-name="GitHub Dot Dev"
-src="module/induction/dot-dev"
-[[blocks]]
-name="Install VS Code"
-src="module/induction/install-vscode"
-time=10
-[[blocks]]
-name="Check Git"
-src="module/induction/check-git-installation"
-time=5
-[[blocks]]
-name="Create CYF Folder"
-src="module/induction/cyf-folder"
-time=5
-[[blocks]]
-name="Fork your Planner"
-src="https://www.youtube.com/watch?v=cnx0RuAu2tc"
-time=5
-[[blocks]]
-name="Make your Planning Board"
-src="https://www.youtube.com/watch?v=Hbtfil-G0h0"
-time=15
-[[blocks]]
-name="Set up Planner"
-src="https://github.com/CodeYourFuture/Coursework-Planner/tree/main"
-time=30
-[[blocks]]
-name="CYF Blog"
-src="module/induction/cyf-blog"
-[[blocks]]
-name="Development Process"
-src="module/induction/development-process"
-[[blocks]]
-name="Version Control"
-src="module/induction/version-control"
-[[blocks]]
-name="Sharing History"
-src="module/induction/sharing-history"
-[[blocks]]
-name="Explore"
-src="module/induction/checkout-a-commit"
-[[blocks]]
-name="Previous Versions"
-src="module/induction/previous-versions"
-[[blocks]]
-name="Forking a Repository"
-src="module/induction/forking-a-repository"
-[[blocks]]
-name="Working Locally"
-src="module/induction/working-locally"
-[[blocks]]
-name="Viewing Files"
-src="module/induction/viewing-files"
-[[blocks]]
-name="Branching"
-src="module/induction/branching"
-[[blocks]]
-name="Wrapping up Git"
-src="module/induction/wrapping-up"
-time=15
-[[blocks]]
-name="Forms in 25 minutes"
-title="Form building"
-src="https://www.youtube.com/watch?v=fNcJuPIZ2WE"
-time=25
-[[blocks]]
-name="Backlog"
-src="blocks/backlog"
-+++
diff --git a/org-cyf/content/itp/onboarding/sprints/2/prep/index.md b/org-cyf/content/itp/onboarding/sprints/2/prep/index.md
deleted file mode 100644
index 9b2df8e65..000000000
--- a/org-cyf/content/itp/onboarding/sprints/2/prep/index.md
+++ /dev/null
@@ -1,22 +0,0 @@
-+++
-title = 'prep'
-layout = 'prep'
-menu_level = ['sprint']
-weight = 1
-[[blocks]]
-name="Spaced Repetition"
-src="blocks/spaced-repetition"
-[[blocks]]
-name="What are Forms"
-src="module/html-css/what-are-forms"
-[[blocks]]
-name="Google Sheets Query Function Explained"
-src="https://www.youtube.com/watch?v=oCKvAcXTLZo"
-time=20
-[[blocks]]
-name="Databases with Google Sheets"
-src="module/databases/databases-with-sheets"
-[[blocks]]
-name="Backlog"
-src="blocks/backlog"
-+++
diff --git a/org-cyf/content/itp/onboarding/sprints/3/prep/index.md b/org-cyf/content/itp/onboarding/sprints/3/prep/index.md
deleted file mode 100644
index b3ce79c1e..000000000
--- a/org-cyf/content/itp/onboarding/sprints/3/prep/index.md
+++ /dev/null
@@ -1,21 +0,0 @@
-+++
-title = 'prep'
-layout = 'prep'
-menu_level = ['sprint']
-weight = 1
-[[blocks]]
-name="Enroll as a Trainee"
-src="https://github.com/CodeYourFuture/Module-Onboarding/issues/72"
-time=30
-[[blocks]]
-name="Record a Goose"
-title="Accessibility audit"
-src="https://github.com/CodeYourFuture/Project-Record-A-Goose/"
-time=180
-[[blocks]]
-name="Learn about Interview Introductions"
-src="module/induction/interview-introductions"
-[[blocks]]
-name="Backlog"
-src="blocks/backlog"
-+++
diff --git a/org-cyf/content/itp/onboarding/success/index.md b/org-cyf/content/itp/onboarding/success/index.md
index dc75b23f6..a1bdc388f 100644
--- a/org-cyf/content/itp/onboarding/success/index.md
+++ b/org-cyf/content/itp/onboarding/success/index.md
@@ -1,50 +1,17 @@
+++
-title = "End of Module Review"
-description = 'How do we know if we have completed Onboarding?'
+title = "End of Sprint Review"
+description = 'How do we know if we have completed onboarding successfully?'
layout = 'success'
menu_level = ['module']
weight = 11
-[[objectives]]
-1="Submit step 1 on the CYF Course Portal"
-2="Apply to enroll as a Trainee"
+objectives = [[
+ "Come to class.",
+ "Name 5 people in your class.",
+ "Have a plan for how to make progress, and how to get help.",
+ "Find and begin your prep for the first sprint of the JavaScript Fundamentals Module.",
+ "Set up Slack and join your class channels.",
+ "Create a git commit and push it to a remote repository.",
+]]
+++
-> [!CAUTION]
->
-> At the end of Onboarding, you must enrol as a trainee. If you do not enrol as a trainee by the end of week 6, you will be removed from the ITP cohort.
->
-> If you are removed from the cohort, you will not be allowed to keep attending class. You can apply to start again in the next cohort if you want.
-
### 🎯 You've achieved your learning objectives if you can:
-
-```objectives
-- Explain to someone how we use prep, backlogs, day plans, and end of sprint/module review pages at {{}}.
-- Track changes to data (your code) over time with Git and GitHub.
-- Validate data with HTML forms.
-- Analyse structured data with SQL in a spreadsheet.
-- Plan your new life as a tech professional.
-```
-
-### 💯 To complete _any_ module, you must:
-
-```objectives
-- Do your work: complete all mandatory backlog issues
-- Come to class
-```
-
-## ✅ To complete _this_ module, you must:
-
-1. Make a new issue on your own Coursework Planner.
- - Follow this template for naming your issue: ` | Onboarding | `
-1. On the issue, add:
- - A screenshot showing that you [attended a demo session with particular members of the CYF team present](https://github.com/CodeYourFuture/Module-Onboarding/issues/918).
- - A link to your _completed_ pull request for "[Wireframe to Web Code](https://github.com/CodeYourFuture/Module-Onboarding/issues/17)".
- - A link to your _completed_ pull request for "[Form Controls](https://github.com/CodeYourFuture/Module-Onboarding/issues/19)".
- - Your Codewars username which you created when you [joined Codewars](https://github.com/CodeYourFuture/Module-Onboarding/issues/39).
-1. Submit the issue link to step 1 of ITP on [CYF Course Portal](https://application-process.codeyourfuture.io/).
-1. **[Apply to enroll as a Trainee](https://forms.gle/vRuofa7aeL5DsbhGA)**.
-
-> [!NOTE]
-> A pull request is _completed_ when a volunteer has added the "Complete" tag.
-
-Celebrate your hard work by checking off the objectives below!
diff --git a/org-cyf/content/itp/structuring-data/_index.md b/org-cyf/content/itp/structuring-data/_index.md
deleted file mode 100644
index 4b5061bb2..000000000
--- a/org-cyf/content/itp/structuring-data/_index.md
+++ /dev/null
@@ -1,8 +0,0 @@
-+++
-title = 'Structuring and testing data'
-description = 'Find meaning behind syntax; Step through functions like a computer; Break problems down into sub-problems; Interpret acceptance criteria to form test cases; Recognise patterns'
-layout = 'module'
-emoji= '🥚'
-menu = ['itp course schedule']
-weight='3'
-+++
diff --git a/org-cyf/content/itp/structuring-data/prerequisites/index.md b/org-cyf/content/itp/structuring-data/prerequisites/index.md
deleted file mode 100644
index 622fb2bbf..000000000
--- a/org-cyf/content/itp/structuring-data/prerequisites/index.md
+++ /dev/null
@@ -1,13 +0,0 @@
-+++
-title = 'Pre-Reqs'
-description = 'Things you must set up to get started'
-layout = 'prep'
-menu_level = ['module']
-weight = 1
-[[blocks]]
-name="Install a unix based os"
-src="module/js1/check-unix-os"
-[[blocks]]
-name="Install Node"
-src="module/js1/install-node"
-+++
diff --git a/org-cyf/content/itp/structuring-data/sprints/1/prep/index.md b/org-cyf/content/itp/structuring-data/sprints/1/prep/index.md
deleted file mode 100644
index c909103ab..000000000
--- a/org-cyf/content/itp/structuring-data/sprints/1/prep/index.md
+++ /dev/null
@@ -1,67 +0,0 @@
-+++
-title = 'prep'
-description = '**Prerequisites:** a terminal, basic arithmetic.'
-layout = 'prep'
-menu_level = ['sprint']
-weight = 1
-[[blocks]]
-name="Define a computer"
-src="module/js1/define-computer"
-[[blocks]]
-name="Interface"
-src="module/js1/interface"
-[[blocks]]
-name="Terminal"
-src="module/js1/terminal"
-[[blocks]]
-name="Data"
-src="module/js1/data"
-[[blocks]]
-name="REPL"
-src="module/js1/repl"
-[[blocks]]
-name="Prep dir"
-src="blocks/prep-dir"
-[[blocks]]
-name="Variables"
-src="module/js1/variables"
-[[blocks]]
-name="Declarations and Statements"
-src="module/js1/declarations-statements"
-[[blocks]]
-name="Functions"
-src="module/js1/functions"
-[[blocks]]
-name="Scripts"
-src="module/js1/scripts"
-[[blocks]]
-name="Logging"
-src="module/js1/logging"
-[[blocks]]
-name="Errors"
-src="module/js1/errors"
-[[blocks]]
-name="Percentages"
-src="module/js1/percentages"
-[[blocks]]
-name="Declaring functions"
-src="module/js1/declaring-functions"
-[[blocks]]
-name="Playing computer"
-src="module/js1/playing-computer"
-[[blocks]]
-name="Scope"
-src="module/js1/scope"
-[[blocks]]
-name="Return"
-src="module/js1/return"
-[[blocks]]
-name="Reuse"
-src="module/js1/reuse"
-[[blocks]]
-name="Parameters"
-src="module/js1/parameters"
-[[blocks]]
-name="Solving problems with functions 📼"
-src="module/js1/functions-workshop"
-+++
diff --git a/org-cyf/content/itp/structuring-data/success/index.md b/org-cyf/content/itp/structuring-data/success/index.md
deleted file mode 100644
index cbdc38402..000000000
--- a/org-cyf/content/itp/structuring-data/success/index.md
+++ /dev/null
@@ -1,52 +0,0 @@
-+++
-title = "End of Module Review"
-description = 'How do we know if we have completed Structuring and Testing Data?'
-layout = 'success'
-menu_level = ['module']
-weight = 11
-[[objectives]]
-1="Submit step 2 on the CYF Course Portal"
-+++
-
-### 🎯 You've achieved your learning objectives if you can:
-
-```objectives
-- Interpret and rephrase error messages
-- Break down a problem into sub-goals
-- Implement and test single sub-goals without implementing a full solution to the whole goal
-- Identify and refactor duplicated code
-- Translate requirements into unit tests
-- Interpret test feedback
-- Identify edge cases that need testing
-- Describe the intended behaviour of a program and its actual behaviour
-- Identify bugs in someone else’s code (person/machine)
-```
-
-### 💯 To complete _any_ module, you must:
-
-```objectives
-- Do your work: complete all mandatory backlog issues
-- Come to class
-```
-
-## ✅ To complete _this_ module, you must:
-
-1. Make a new issue on your own Coursework Planner.
- - Follow this template for naming your issue: ` | Structuring and testing data | `
-1. On the issue, add:
- - A link to the [Codewars Progress Checker](https://codeyourfuture.github.io/Codewars-Progress-Checker/) showing you have completed **all katas** for [sprint 1](https://github.com/CodeYourFuture/Module-Structuring-and-Testing-Data/issues/899), [sprint 2](https://github.com/CodeYourFuture/Module-Structuring-and-Testing-Data/issues/900), and [sprint 3](https://github.com/CodeYourFuture/Module-Structuring-and-Testing-Data/issues/901) of this module. Link should be in the form https://codeyourfuture.github.io/Codewars-Progress-Checker/#YOUR_CODEWARS_USERNAME
- Remember: you are also expected to have completed [at least one mentored pair programming session](https://github.com/CodeYourFuture/Module-Structuring-and-Testing-Data/issues/28) on this work too.
- - Links to your _completed_ pull requests for each sprint:
- 1. "[Sprint 1 Coursework Exercises](https://github.com/CodeYourFuture/Module-Structuring-and-Testing-Data/issues/35)".
- 2. "[Sprint 2 Coursework Exercises](https://github.com/CodeYourFuture/Module-Structuring-and-Testing-Data/issues/7)".
- 3. "[Sprint 3 "Implement and Rewrite Tests" Coursework Exercises](https://github.com/CodeYourFuture/Module-Structuring-and-Testing-Data/issues/6)".
- 4. "[Sprint 3 "Practice TDD" Coursework Exercises](https://github.com/CodeYourFuture/Module-Structuring-and-Testing-Data/issues/695)".
- - A link to your "[Written Email for an Internship](https://github.com/CodeYourFuture/Module-Structuring-and-Testing-Data/issues/20)".
- - A screenshot showing that you [gave a demo in a demo session with particular members of staff present](https://github.com/CodeYourFuture/Module-Structuring-and-Testing-Data/issues/897).\
- This must be at a different demo session than any submitted for previous modules.
-1. Submit the issue link to step 2 of ITP on [CYF Course Portal](https://application-process.codeyourfuture.io/).
-
-> [!NOTE]
-> A pull request is _completed_ when a volunteer has added the "Complete" tag.
-
-Celebrate your hard work by checking off the objectives below!
diff --git a/org-cyf/content/itp/testing/_index.md b/org-cyf/content/itp/testing/_index.md
new file mode 100644
index 000000000..086ebd58d
--- /dev/null
+++ b/org-cyf/content/itp/testing/_index.md
@@ -0,0 +1,8 @@
++++
+title = 'Testing'
+description = 'Break problems down into sub-problems; interpret acceptance criteria to form test cases; recognise patterns'
+layout = 'module'
+emoji= '🧪'
+menu = ['itp course schedule']
+weight='3'
++++
diff --git a/org-cyf/content/itp/structuring-data/sprints/1/_index.md b/org-cyf/content/itp/testing/sprints/1/_index.md
similarity index 92%
rename from org-cyf/content/itp/structuring-data/sprints/1/_index.md
rename to org-cyf/content/itp/testing/sprints/1/_index.md
index cd4327ae6..60fee00d9 100644
--- a/org-cyf/content/itp/structuring-data/sprints/1/_index.md
+++ b/org-cyf/content/itp/testing/sprints/1/_index.md
@@ -3,6 +3,6 @@ title = 'Sprint 1'
description = 'The plan for this sprint'
layout = 'sprint'
menu_level = ['module']
-weight = 2
+weight = 1
theme = "Programming fundamentals"
+++
diff --git a/org-cyf/content/itp/structuring-data/sprints/1/backlog/index.md b/org-cyf/content/itp/testing/sprints/1/backlog/index.md
similarity index 100%
rename from org-cyf/content/itp/structuring-data/sprints/1/backlog/index.md
rename to org-cyf/content/itp/testing/sprints/1/backlog/index.md
diff --git a/org-cyf/content/itp/structuring-data/sprints/1/day-plan/index.md b/org-cyf/content/itp/testing/sprints/1/day-plan/index.md
similarity index 100%
rename from org-cyf/content/itp/structuring-data/sprints/1/day-plan/index.md
rename to org-cyf/content/itp/testing/sprints/1/day-plan/index.md
diff --git a/org-cyf/content/itp/testing/sprints/1/prep/index.md b/org-cyf/content/itp/testing/sprints/1/prep/index.md
new file mode 100644
index 000000000..5bdaafbfb
--- /dev/null
+++ b/org-cyf/content/itp/testing/sprints/1/prep/index.md
@@ -0,0 +1,10 @@
++++
+title = 'prep'
+description = '**Prerequisites:** a terminal, basic arithmetic.'
+layout = 'prep'
+menu_level = ['sprint']
+weight = 1
+[[blocks]]
+name="Playing computer"
+src="module/js1/playing-computer"
++++
diff --git a/org-cyf/content/itp/structuring-data/sprints/1/success/index.md b/org-cyf/content/itp/testing/sprints/1/success/index.md
similarity index 100%
rename from org-cyf/content/itp/structuring-data/sprints/1/success/index.md
rename to org-cyf/content/itp/testing/sprints/1/success/index.md
diff --git a/org-cyf/content/itp/structuring-data/sprints/2/_index.md b/org-cyf/content/itp/testing/sprints/2/_index.md
similarity index 93%
rename from org-cyf/content/itp/structuring-data/sprints/2/_index.md
rename to org-cyf/content/itp/testing/sprints/2/_index.md
index 4c250b5ad..97c5203e0 100644
--- a/org-cyf/content/itp/structuring-data/sprints/2/_index.md
+++ b/org-cyf/content/itp/testing/sprints/2/_index.md
@@ -3,6 +3,6 @@ title = 'Sprint 2'
description = 'The plan for this sprint'
layout = 'sprint'
menu_level = ['module']
-weight = 3
+weight = 2
theme = "Comparisons, assertions, and breaking down problems"
+++
diff --git a/org-cyf/content/itp/structuring-data/sprints/2/backlog/index.md b/org-cyf/content/itp/testing/sprints/2/backlog/index.md
similarity index 100%
rename from org-cyf/content/itp/structuring-data/sprints/2/backlog/index.md
rename to org-cyf/content/itp/testing/sprints/2/backlog/index.md
diff --git a/org-cyf/content/itp/structuring-data/sprints/2/day-plan/index.md b/org-cyf/content/itp/testing/sprints/2/day-plan/index.md
similarity index 100%
rename from org-cyf/content/itp/structuring-data/sprints/2/day-plan/index.md
rename to org-cyf/content/itp/testing/sprints/2/day-plan/index.md
diff --git a/org-cyf/content/itp/structuring-data/sprints/2/prep/index.md b/org-cyf/content/itp/testing/sprints/2/prep/index.md
similarity index 58%
rename from org-cyf/content/itp/structuring-data/sprints/2/prep/index.md
rename to org-cyf/content/itp/testing/sprints/2/prep/index.md
index 7be767d1c..a6087453a 100644
--- a/org-cyf/content/itp/structuring-data/sprints/2/prep/index.md
+++ b/org-cyf/content/itp/testing/sprints/2/prep/index.md
@@ -7,27 +7,9 @@ weight = 1
src="module/js1/clocks"
name="Clocks"
[[blocks]]
-src="module/js1/comparison"
-name="Comparison"
-[[blocks]]
src="module/js1/assertions"
name="Assertions"
[[blocks]]
-src="module/js1/interpreting-errors"
-name="Interpreting errors"
-[[blocks]]
-src="module/js1/interpreting-this-error"
-name="Interpreting this error"
-[[blocks]]
-src="module/js1/reusing-variable-names"
-name="Reusing variable names"
-[[blocks]]
-src="module/js1/strategy"
-name="Strategy"
-[[blocks]]
-src="module/js1/conditionality"
-name="Conditionality"
-[[blocks]]
src="module/js1/sub-goal"
name="Sub-goal"
[[blocks]]
diff --git a/org-cyf/content/itp/structuring-data/sprints/2/success/index.md b/org-cyf/content/itp/testing/sprints/2/success/index.md
similarity index 100%
rename from org-cyf/content/itp/structuring-data/sprints/2/success/index.md
rename to org-cyf/content/itp/testing/sprints/2/success/index.md
diff --git a/org-cyf/content/itp/structuring-data/sprints/3/_index.md b/org-cyf/content/itp/testing/sprints/3/_index.md
similarity index 92%
rename from org-cyf/content/itp/structuring-data/sprints/3/_index.md
rename to org-cyf/content/itp/testing/sprints/3/_index.md
index 309ab50bd..ac74cc086 100644
--- a/org-cyf/content/itp/structuring-data/sprints/3/_index.md
+++ b/org-cyf/content/itp/testing/sprints/3/_index.md
@@ -3,6 +3,6 @@ title = 'Sprint 3'
description = 'The plan for this sprint'
layout = 'sprint'
menu_level = ['module']
-weight = 4
+weight = 3
theme = "Test cases with Jest"
+++
diff --git a/org-cyf/content/itp/structuring-data/sprints/3/backlog/index.md b/org-cyf/content/itp/testing/sprints/3/backlog/index.md
similarity index 100%
rename from org-cyf/content/itp/structuring-data/sprints/3/backlog/index.md
rename to org-cyf/content/itp/testing/sprints/3/backlog/index.md
diff --git a/org-cyf/content/itp/structuring-data/sprints/3/day-plan/index.md b/org-cyf/content/itp/testing/sprints/3/day-plan/index.md
similarity index 100%
rename from org-cyf/content/itp/structuring-data/sprints/3/day-plan/index.md
rename to org-cyf/content/itp/testing/sprints/3/day-plan/index.md
diff --git a/org-cyf/content/itp/structuring-data/sprints/3/prep/index.md b/org-cyf/content/itp/testing/sprints/3/prep/index.md
similarity index 100%
rename from org-cyf/content/itp/structuring-data/sprints/3/prep/index.md
rename to org-cyf/content/itp/testing/sprints/3/prep/index.md
diff --git a/org-cyf/content/itp/structuring-data/sprints/3/success/index.md b/org-cyf/content/itp/testing/sprints/3/success/index.md
similarity index 100%
rename from org-cyf/content/itp/structuring-data/sprints/3/success/index.md
rename to org-cyf/content/itp/testing/sprints/3/success/index.md
diff --git a/org-cyf/content/itp/welcome/_index.md b/org-cyf/content/itp/welcome/_index.md
deleted file mode 100644
index 8dd18a7ae..000000000
--- a/org-cyf/content/itp/welcome/_index.md
+++ /dev/null
@@ -1,10 +0,0 @@
-+++
-title = 'Welcome to Code Your Future'
-description = 'Our first day together '
-layout = 'module'
-emoji= '🫶🏽'
-menu = ['itp course schedule']
-weight='1'
-parentsToTraverseToModule = 0
-moduleForRegister = "Welcome"
-+++
diff --git a/org-cyf/content/itp/welcome/prep/index.md b/org-cyf/content/itp/welcome/prep/index.md
deleted file mode 100644
index 5d7501df8..000000000
--- a/org-cyf/content/itp/welcome/prep/index.md
+++ /dev/null
@@ -1,35 +0,0 @@
-+++
-title = 'Prep'
-description = 'What to do before you come to class'
-layout = 'prep'
-theme = "Getting to know how the course works"
-menu_level = ['module']
-weight = 1
-[[blocks]]
-name="Application"
-src="module/onboarding/application"
-[[blocks]]
-name="Notes"
-src="module/onboarding/notes"
-[[blocks]]
-name="Goals"
-src="module/onboarding/goals"
-[[blocks]]
-name="Expectations"
-src="module/onboarding/expectations"
-[[blocks]]
-name="Acceptable AI Use"
-src="module/onboarding/itp-ai-use"
-[[blocks]]
-name="Help"
-src="module/onboarding/help"
-[[blocks]]
-name="Preparation"
-src="module/onboarding/preparation"
-[[blocks]]
-name="Professional Accounts"
-src="module/induction/accounts"
-[[blocks]]
-name="House Rules"
-src="blocks/house-rules"
-+++
diff --git a/org-cyf/content/itp/welcome/success/index.md b/org-cyf/content/itp/welcome/success/index.md
deleted file mode 100644
index 5640218d7..000000000
--- a/org-cyf/content/itp/welcome/success/index.md
+++ /dev/null
@@ -1,16 +0,0 @@
-+++
-title = "End of Module Review"
-description = 'How do we know if we have completed day one successfully?'
-layout = 'success'
-menu_level = ['module']
-weight = 11
-objectives = [[
- "Come to class.",
- "Name 5 people in your class.",
- "Have a plan for how to make progress, and how to get help.",
- "Find and begin your prep for the first sprint of the Onboarding Module.",
- "Set up Slack and join your class channels.",
-]]
-+++
-
-### 🎯 You've achieved your learning objectives if you can: