From 16d639067fb176fc610aa41281f9c39b9b5ce2da Mon Sep 17 00:00:00 2001
From: Daniel Wagner-Hall
Date: Mon, 14 Jul 2025 16:26:46 +0100
Subject: [PATCH 01/19] Update repo metadata
---
.github/FUNDING.yml | 11 ----
.github/ISSUE_TEMPLATE/config.yml | 4 +-
.github/ISSUE_TEMPLATE/pd-assignment.yml | 2 +-
.github/ISSUE_TEMPLATE/tech-ed-assignment.yml | 14 ++--
.github/pull_request_template.md | 6 +-
HOW_TO_REVIEW.md | 66 -------------------
6 files changed, 13 insertions(+), 90 deletions(-)
delete mode 100644 HOW_TO_REVIEW.md
diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
index b34cfcfc3..ea03447fe 100644
--- a/.github/FUNDING.yml
+++ b/.github/FUNDING.yml
@@ -1,13 +1,2 @@
-# These are supported funding model platforms
-
github: CodeYourFuture
-patreon: # Replace with a single Patreon username
-open_collective: # Replace with a single Open Collective username
-ko_fi: # Replace with a single Ko-fi username
-tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
-community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
-liberapay: # Replace with a single Liberapay username
-issuehunt: # Replace with a single IssueHunt username
-otechie: # Replace with a single Otechie username
-lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
custom: https://codeyourfuture.io/donate
diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml
index 5fe8ffd09..db0e6f432 100644
--- a/.github/ISSUE_TEMPLATE/config.yml
+++ b/.github/ISSUE_TEMPLATE/config.yml
@@ -1,4 +1,4 @@
-blank_issues_enabled: false
+blank_issues_enabled: true
contact_links:
- name: CYF
url: contact@codeyourfuture.io
@@ -8,7 +8,7 @@ contact_links:
about: Join CYF here
- name: CYF Slack
url: codeyourfuture.slack.com
- about: Come to #cyf-syllabus-tech and chat
+ about: Come to #cyf-curriculum and chat
- name: CYF Tech Ed
url: https://github.com/orgs/CodeYourFuture/teams/mentors
about: CYF mentors on Github
diff --git a/.github/ISSUE_TEMPLATE/pd-assignment.yml b/.github/ISSUE_TEMPLATE/pd-assignment.yml
index c8bd22980..19f15fa3a 100644
--- a/.github/ISSUE_TEMPLATE/pd-assignment.yml
+++ b/.github/ISSUE_TEMPLATE/pd-assignment.yml
@@ -1,7 +1,7 @@
name: PD Coursework
description: Assign a piece of PD coursework
title: "[PD] "
-labels: [PD, 🏝 Priority Stretch, 🐇 Size Small]
+labels: [PD, 🏝 Priority Stretch, 🐇 Size Small, 📅 Sprint 1]
body:
- type: markdown
attributes:
diff --git a/.github/ISSUE_TEMPLATE/tech-ed-assignment.yml b/.github/ISSUE_TEMPLATE/tech-ed-assignment.yml
index ac9da906a..343b4d677 100644
--- a/.github/ISSUE_TEMPLATE/tech-ed-assignment.yml
+++ b/.github/ISSUE_TEMPLATE/tech-ed-assignment.yml
@@ -1,20 +1,20 @@
name: Tech Ed Coursework
description: Assign a piece of technical coursework
title: ""
-labels: [Tech Ed, 🏕 Priority Mandatory, 🐂 Size Medium, 📅 Module 1]
+labels: [Tech Ed, 🏕 Priority Mandatory, 🐂 Size Medium, 📅 Sprint 1]
body:
- type: markdown
attributes:
value: |
- Thanks for taking the time to assign this coursework!
+ Thanks for taking the time to assign this coursework!
- To support our trainees with planning and prioritising their own learning journey, we want our coursework assignments to be more informative.
+ To support our trainees with planning and prioritising their own learning journey, we want our coursework assignments to be more informative.
We don't just want to tell them what to do, we want to tell them stuff like:
- why we are doing it
- what it's "for" (problem-solving, debugging, etc)
- how long they should spend on it, maximum
- - how to get help
- - how to review it with answers
+ - how to get help
+ - how to review it with answers
- how to get it reviewed from mentors and peers
- type: input
attributes:
@@ -26,7 +26,7 @@ body:
label: Learning Objectives
description: https://common.codeyourfuture.io/common-theme/shortcodes/objectives/
placeholder: |
-
+
- [ ] CYF format, task list formatting
- type: textarea
@@ -80,7 +80,7 @@ body:
1. Update labels
- priority -- is this coursework key, mandatory, or stretch? Pick one.
- size -- help trainees plan their time with rough estimation. Pick one
- - topics -- add all that seem relevant to you.
+ - topics -- add all that seem relevant to you.
2. Add a Sprint label to add to the backlog view
- sprint 1,2,3,4
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index 3f0e90653..86544e40d 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -2,11 +2,11 @@
You must title your PR like this:
-REGION | COHORT_NAME | FIRST_NAME LAST_NAME | PROJ_NAME
+Region | Cohort | FirstName LastName | Sprint | Assignment Title
For example,
-London | May-2025 | Carol Owen | Wireframe
+London | 25-ITP-May | Carol Owen | Sprint 1 | Alarm Clock
Complete the task list below this message.
If your PR is rejected, check the task list.
@@ -18,7 +18,7 @@ If your PR is rejected, check the task list.
Self checklist
- [ ] I have committed my files one by one, on purpose, and for a reason
-- [ ] I have titled my PR with REGION | COHORT_NAME | FIRST_NAME LAST_NAME | PROJ_NAME
+- [ ] I have titled my PR with Region | Cohort | FirstName LastName | Sprint | Assignment Title
- [ ] I have tested my changes
- [ ] My changes follow the [style guide](https://curriculum.codeyourfuture.io/guides/reviewing/style-guide/)
- [ ] My changes meet the [requirements](./README.md) of this task
diff --git a/HOW_TO_REVIEW.md b/HOW_TO_REVIEW.md
deleted file mode 100644
index 39222358f..000000000
--- a/HOW_TO_REVIEW.md
+++ /dev/null
@@ -1,66 +0,0 @@
-# Everyone reviews code at CYF
-
-[](https://curriculum.codeyourfuture.io/guides/reviewing/)
-
-https://curriculum.codeyourfuture.io/guides/reviewing/
-
-Mentors and participants all review code, and collaborate on improving code quality. We are all helping each other to talk, write, and think about code more clearly.
-
-We are not reviewing code as if we were to merge this PR into production; we are opening a technical conversation for the purpose of insight and development.
-
-## Key points:
-
-1. Ask questions instead of making statements:
-
- **YES:** "Is there another element you could use to group a set of fields in a form? Why might someone use a different element in a form?"
- **NO:** "Use fieldset not divs"
-
-2. Encourage simplicity, clarity, and precision:
-
- **YES** "There are 15,0000 files in this changelist. Which files should be reviewed?"
- **NO** "It doesn't matter; I can try to figure out what you meant."
-
-3. Respect everyone's work and time:
-
- **YES** "I think there's some more to do here. Thanks for sharing where you're up to. Can I help you complete this?"
- **NO** "This is rubbish. Try harder."
-
-## Getting your pull request reviewed
-
-We're using GitHub Labels in our Code Review process. In order for a volunteer to review a pull request, a participant will need to add a "Needs Review" label to it.
-
-To add a label to a pull request:
-
-- Open the pull request
-- In the right sidebar, click Labels, then select the label you'd like to add - for example: "Needs Review"
-
-Take a look at our code review process from beginning to end. Let us know if you have any questions or need help!
-
-
-## Labels for feedback
-
-Reviewers, please add labels (provided) to the PR once you've reviewed. This helps to focus the participant on the areas they should work on, and gives an overview for mentors on what the whole cohort needs to work on.
-
-## Solutions
-
-### Where to find solutions?
-
-You can find the solutions for the module on the `solutions` branch.
-
-### Solutions branch
-
-The solutions branch typically contains:
-
-#### Sample solutions
-
-Solutions are example answers not the only correct answers.
-
-#### Common responses guides.
-
-Everyone is invited to contribute commonly encountered problems, mistakes, misunderstandings, and mental-model errors to our common responses documents.
-
-Use these resources to inform your code review, get unstuck, and improve your understanding.
-
-## Guides
-
-https://curriculum.codeyourfuture.io/guides/reviewing/
From 7b96b80a687352cd6b87efa19a8e8dd2d59a9580 Mon Sep 17 00:00:00 2001
From: Daniel Wagner-Hall
Date: Wed, 13 Aug 2025 20:22:01 +0100
Subject: [PATCH 02/19] Set up Validate PR Metadata action
---
.github/workflows/validate-pr-metadata.yml | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
create mode 100644 .github/workflows/validate-pr-metadata.yml
diff --git a/.github/workflows/validate-pr-metadata.yml b/.github/workflows/validate-pr-metadata.yml
new file mode 100644
index 000000000..5c06d7083
--- /dev/null
+++ b/.github/workflows/validate-pr-metadata.yml
@@ -0,0 +1,18 @@
+name: Validate PR Metadata
+on:
+ pull_request:
+ types:
+ - labeled
+ - unlabeled
+ - opened
+ - edited
+ - reopened
+
+jobs:
+ validate_pr_metadata:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+ - uses: CodeYourFuture/actions/validate-pr-metadata@main
+ with:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
From 0b12de6425597ddf5cb1f7d49799f2e08bcd1930 Mon Sep 17 00:00:00 2001
From: Daniel Wagner-Hall
Date: Wed, 13 Aug 2025 20:27:15 +0100
Subject: [PATCH 03/19] Allow secrets on action
---
.github/workflows/validate-pr-metadata.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/validate-pr-metadata.yml b/.github/workflows/validate-pr-metadata.yml
index 5c06d7083..10ef3c74a 100644
--- a/.github/workflows/validate-pr-metadata.yml
+++ b/.github/workflows/validate-pr-metadata.yml
@@ -1,6 +1,6 @@
name: Validate PR Metadata
on:
- pull_request:
+ pull_request_target:
types:
- labeled
- unlabeled
From 72fe02ba5885d4f58923a041e9a4f6ffca1b99e5 Mon Sep 17 00:00:00 2001
From: Daniel Wagner-Hall
Date: Tue, 26 Aug 2025 17:44:30 +0100
Subject: [PATCH 04/19] Update PR template
---
.github/pull_request_template.md | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md
index 86544e40d..0d8ee1dfd 100644
--- a/.github/pull_request_template.md
+++ b/.github/pull_request_template.md
@@ -8,8 +8,13 @@ For example,
London | 25-ITP-May | Carol Owen | Sprint 1 | Alarm Clock
-Complete the task list below this message.
-If your PR is rejected, check the task list.
+Fill in the template below - remove any sections that don't apply.
+
+Complete the self checklist - replace each empty box in the checklist [ ] with a [x].
+
+Add the label "Needs Review" and you will get review.
+
+Respond to volunteer reviews until the volunteer marks it as "Complete".
-->
@@ -17,11 +22,10 @@ If your PR is rejected, check the task list.
Self checklist
-- [ ] I have committed my files one by one, on purpose, and for a reason
- [ ] I have titled my PR with Region | Cohort | FirstName LastName | Sprint | Assignment Title
+- [ ] My changes meet the requirements of the task
- [ ] I have tested my changes
- [ ] My changes follow the [style guide](https://curriculum.codeyourfuture.io/guides/reviewing/style-guide/)
-- [ ] My changes meet the [requirements](./README.md) of this task
## Changelist
From 3b1f39507172b13da87aea1b4566a77620cca281 Mon Sep 17 00:00:00 2001
From: Colin Farquhar
Date: Thu, 22 Jan 2026 16:01:14 +0000
Subject: [PATCH 05/19] Remove old issue templates (#1012)
---
.github/ISSUE_TEMPLATE/config.yml | 14 ---
.github/ISSUE_TEMPLATE/pd-assignment.yml | 59 -------------
.github/ISSUE_TEMPLATE/tech-ed-assignment.yml | 88 -------------------
3 files changed, 161 deletions(-)
delete mode 100644 .github/ISSUE_TEMPLATE/config.yml
delete mode 100644 .github/ISSUE_TEMPLATE/pd-assignment.yml
delete mode 100644 .github/ISSUE_TEMPLATE/tech-ed-assignment.yml
diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml
deleted file mode 100644
index db0e6f432..000000000
--- a/.github/ISSUE_TEMPLATE/config.yml
+++ /dev/null
@@ -1,14 +0,0 @@
-blank_issues_enabled: true
-contact_links:
- - name: CYF
- url: contact@codeyourfuture.io
- about: Please report serious issues here.
- - name: Join CYF
- url: https://codeyourfuture.io/volunteers/
- about: Join CYF here
- - name: CYF Slack
- url: codeyourfuture.slack.com
- about: Come to #cyf-curriculum and chat
- - name: CYF Tech Ed
- url: https://github.com/orgs/CodeYourFuture/teams/mentors
- about: CYF mentors on Github
diff --git a/.github/ISSUE_TEMPLATE/pd-assignment.yml b/.github/ISSUE_TEMPLATE/pd-assignment.yml
deleted file mode 100644
index 19f15fa3a..000000000
--- a/.github/ISSUE_TEMPLATE/pd-assignment.yml
+++ /dev/null
@@ -1,59 +0,0 @@
-name: PD Coursework
-description: Assign a piece of PD coursework
-title: "[PD] "
-labels: [PD, 🏝 Priority Stretch, 🐇 Size Small, 📅 Sprint 1]
-body:
- - type: markdown
- attributes:
- value: |
- Thanks for taking the time to assign this coursework!
- - type: input
- attributes:
- label: Coursework content
- validations:
- required: true
- - type: input
- attributes:
- label: Estimated time in hours
- description: (PD has max 4 per week total)
- validations:
- required: true
- - type: textarea
- attributes:
- label: What is the purpose of this assignment?
- description: Clearly explain the purpose of this assignment and how trainees can evaluate this.
- validations:
- required: true
- - type: textarea
- attributes:
- label: How to submit
- description: State in clear steps how a trainee can submit this assignment.
- placeholder: |
- Copy the Google doc to your own Google Drive
- Complete the work assigned
- When you are ready, move your document to your class Drive
- validations:
- required: true
- - type: textarea
- attributes:
- label: Anything else?
- description: |
- Links? References? Anything that will give more context
-
- Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in.
- - type: markdown
- attributes:
- value: |
- **Thank you so much.**
-
- Please now complete this ticket by filling in the options on the sidebar.
-
- 1. Update labels
- - priority -- is this coursework key, mandatory, or stretch?
- - size -- help trainees plan their time with rough estimation
- 2. Add to project backlog
- - add to the project named the same as this repo
- - fill in custom fields -- priority, size, hours, week -- to match this issue
-
- Once your ticket is complete, you may like to check it out on the example project board attached to this repo.
- This is so you understand how trainees will use your work.
diff --git a/.github/ISSUE_TEMPLATE/tech-ed-assignment.yml b/.github/ISSUE_TEMPLATE/tech-ed-assignment.yml
deleted file mode 100644
index 343b4d677..000000000
--- a/.github/ISSUE_TEMPLATE/tech-ed-assignment.yml
+++ /dev/null
@@ -1,88 +0,0 @@
-name: Tech Ed Coursework
-description: Assign a piece of technical coursework
-title: ""
-labels: [Tech Ed, 🏕 Priority Mandatory, 🐂 Size Medium, 📅 Sprint 1]
-body:
- - type: markdown
- attributes:
- value: |
- Thanks for taking the time to assign this coursework!
-
- To support our trainees with planning and prioritising their own learning journey, we want our coursework assignments to be more informative.
- We don't just want to tell them what to do, we want to tell them stuff like:
- - why we are doing it
- - what it's "for" (problem-solving, debugging, etc)
- - how long they should spend on it, maximum
- - how to get help
- - how to review it with answers
- - how to get it reviewed from mentors and peers
- - type: input
- attributes:
- label: Link to the coursework
- validations:
- required: true
- - type : textarea
- attributes:
- label: Learning Objectives
- description: https://common.codeyourfuture.io/common-theme/shortcodes/objectives/
- placeholder: |
-
- - [ ] CYF format, task list formatting
-
- - type: textarea
- attributes:
- label: Why are we doing this?
- description: Clearly explain the purpose of this assignment
- validations:
- required: true
- - type: input
- attributes:
- label: Maximum time in hours
- description: (Tech has max 16 per week total)
- validations:
- required: true
- - type: textarea
- attributes:
- label: How to get help
- description: State simply how trainees can get help with this assignment
- value: |
- Share your blockers in your class channel
- https://curriculum.codeyourfuture.io/guides/getting-help/asking-questions/
- - type: textarea
- attributes:
- label: How to submit
- description: State in clear steps how a trainee can submit this assignment.
- value: |
- Fork the repo to your own GitHub account
- Make regular small commits with clear messages
- When you are ready, open a Pull Request to the CYF repo
- Make sure you fill in the PR template provided
- validations:
- required: true
- - type: textarea
- attributes:
- label: How to review
- description: How to get code review and how to self-review
- - type: textarea
- attributes:
- label: Anything else?
- description: |
- Links? References? Anything that will give more context
-
- Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in.
- - type: markdown
- attributes:
- value: |
- **Thank you so much.**
-
- Please now complete this ticket by filling in the options on the sidebar.
-
- 1. Update labels
- - priority -- is this coursework key, mandatory, or stretch? Pick one.
- - size -- help trainees plan their time with rough estimation. Pick one
- - topics -- add all that seem relevant to you.
- 2. Add a Sprint label to add to the backlog view
- - sprint 1,2,3,4
-
- Once your ticket is complete, you may like to add it to the example project board attached to this repo.
- This is so you understand how trainees will use your work. Nobody has built a board copier yet, so trainees will be doing this step themselves.
From 7a56285bc5fc2c35d7156f1db5205f4982ebbe6f Mon Sep 17 00:00:00 2001
From: KayanatSuleman
Date: Thu, 22 Jan 2026 21:10:37 +0000
Subject: [PATCH 06/19] Create three articles explaining README, wireframes,
and Git branches
---
Wireframe/README.md | 2 +-
Wireframe/index.html | 20 +++++++++++++++++++-
2 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/Wireframe/README.md b/Wireframe/README.md
index 0ae0216d1..13ba3e1b3 100644
--- a/Wireframe/README.md
+++ b/Wireframe/README.md
@@ -15,7 +15,7 @@ There are some provided HTML and CSS files you can use to get started. You can u
- [ ] Use semantic HTML tags to structure the webpage
-- [ ] Create three articles, each including a title, summary, and a link
+- [x] Create three articles, each including a title, summary, and a link
- [ ] Check a webpage against a wireframe layout
- [ ] Test web code using [Lighthouse](https://programming.codeyourfuture.io/guides/testing/lighthouse)
- [ ] Use version control by committing often and pushing regularly to GitHub
diff --git a/Wireframe/index.html b/Wireframe/index.html
index 0e014e535..f6601fe84 100644
--- a/Wireframe/index.html
+++ b/Wireframe/index.html
@@ -16,7 +16,25 @@
Wireframe
-
Title
+
What is the purpose of a README file?
+
+ Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam,
+ voluptates. Quisquam, voluptates.
+
- This is the default, provided code and no changes have been made yet.
-
-
-
-
-
-
What is the purpose of a README file?
+
+
+
+
+
+ Wireframe
+
+
+
+
+
Wireframe
- Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam,
- voluptates. Quisquam, voluptates.
+ This is the default, provided code and no changes have been made yet.
- Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam,
- voluptates. Quisquam, voluptates.
+ A ReadMe file explains what a project is, how set it up and how to use it.