From d7c4908460700828eaffde6bd442cb560d8b6f20 Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Tue, 13 Jan 2026 11:46:01 +0100 Subject: [PATCH 01/15] small tweak to foundation doc --- courses/foundation/final-project/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/courses/foundation/final-project/README.md b/courses/foundation/final-project/README.md index 51fdfcbf..f7b205c8 100644 --- a/courses/foundation/final-project/README.md +++ b/courses/foundation/final-project/README.md @@ -30,7 +30,7 @@ Welcome to your final project! Here you can learn more about the goals and requi - [ ] Design a data schema to store data for your app - [ ] Create a database table with usable data -## Organisation Requirements +## Organisational Requirements - [ ] Work as a pair (two trainees) to complete the project together - [ ] Use Trello to organise your project and visualise your progress From 0de3f954d7f22e30da83398a543dc66eda9abd3c Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Tue, 13 Jan 2026 11:49:09 +0100 Subject: [PATCH 02/15] Added basic outline for final project --- shared-modules/final-project/Backend.md | 24 ++++++++++++++++ shared-modules/final-project/Frontend.md | 24 ++++++++++++++++ shared-modules/final-project/README.md | 36 ++++++++++++++++++++++++ 3 files changed, 84 insertions(+) create mode 100644 shared-modules/final-project/Backend.md create mode 100644 shared-modules/final-project/Frontend.md create mode 100644 shared-modules/final-project/README.md diff --git a/shared-modules/final-project/Backend.md b/shared-modules/final-project/Backend.md new file mode 100644 index 00000000..3438818e --- /dev/null +++ b/shared-modules/final-project/Backend.md @@ -0,0 +1,24 @@ +# Backend Requirements + +## Technical Requirements + +These technical requirements are designed to showcase all the skills you've learned along the program. + +TODO + + +## Organisational Requirements + +- [ ] Work as a team of 4-5 trainees to complete the project together +- [ ] Assign clear roles and/or areas of ownership between each team member +- [ ] Use Trello to organise your project tasks and visualise your progress +- [ ] Define all of your tasks clearly using Trello cards +- [ ] Organise your team using weekly sprints +- [ ] Run weekly planning sessions to decide on the next tasks and priority order for the sprint +- [ ] Submit small pull request(s) for each task, ready to be reviewed by other team members before merging + +## Deliverables + +These are all of the required items you need to deliver to complete the project. + +TODO \ No newline at end of file diff --git a/shared-modules/final-project/Frontend.md b/shared-modules/final-project/Frontend.md new file mode 100644 index 00000000..d47b4840 --- /dev/null +++ b/shared-modules/final-project/Frontend.md @@ -0,0 +1,24 @@ +# Frontend Requirements + +## Technical Requirements + +These technical requirements are designed to showcase all the skills you've learned along the program. + +TODO + + +## Organisational Requirements + +- [ ] Work as a team of 4-5 trainees to complete the project together +- [ ] Assign clear roles and/or areas of ownership between each team member +- [ ] Use Trello to organise your project tasks and visualise your progress +- [ ] Define all of your tasks clearly using Trello cards +- [ ] Organise your team using weekly sprints +- [ ] Run weekly planning sessions to decide on the next tasks and priority order for the sprint +- [ ] Submit small pull request(s) for each task, ready to be reviewed by other team members before merging + +## Deliverables + +These are all of the required items you need to deliver to complete the project. + +TODO \ No newline at end of file diff --git a/shared-modules/final-project/README.md b/shared-modules/final-project/README.md new file mode 100644 index 00000000..c93b4d48 --- /dev/null +++ b/shared-modules/final-project/README.md @@ -0,0 +1,36 @@ +# Final Project +This module contains information about the final module of the program, where you will take everything you have learned so far and work together as a team to build a final project together. + +This module usually runs for 4-5 weeks. + +The final project can be organised differently, depending on the team responsible, mentors and the opportunities available at the time. The default option is to run it with: + +1. Trainee-proposed projects (e.g. [example project proposal](https://docs.google.com/document/d/1558NnZ0Fuwol-UhZIo9YcxxO1UtI7vJOWYgkBmF2EPc/edit)) and built using [HYF Project Template](https://github.com/HackYourFuture-CPH/hyf-project-template) + +Alternatively, when possible, we can run them as: + +2. Client-driven projects designed in collaboration with a real client partner, built using their own templates and starting codebase. + +## Learning Goals + +These goals are required regardless of how the final project is organised. + +By the end of this session, you will be able to: + +- [ ] Collaborate effectively in a team setting + - [ ] Read and extend/improve other peoples code + - [ ] Give and receive constructive PR feedback + - [ ] Plan, communicate and coordinate technical tasks / solutions upfront before implementation +- [ ] Develop self-guided learning skills (e.g. learn to read documetation for a new tool or API) +- [ ] Interpret a problem statement and specs/wireframes/prototypes into buildable requirements +- [ ] Break down bigger problems into smaller, actionable written tasks +- [ ] Work in iterative sprints and achieve deadlines +- [ ] Ask for help effectively and at the right time (e.g. describing problems to mentors, asking online, and knowing the power *and* limitations of using AI) +- [ ] Deploy a completed project you are proud to showcase on your portfolio + +## Requirements + +The specific requirements differ between specialisms. See the below: + +1. [Frontend Requirements](Frontend.md) +2. [Backend Requirements](Backend.md) From ad5480c75afe4826508d215fd2173ca3a3a69f73 Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Thu, 15 Jan 2026 10:21:39 +0100 Subject: [PATCH 03/15] initial frontend project requirements --- shared-modules/final-project/Frontend.md | 49 ++++++++++++++++++++++-- 1 file changed, 45 insertions(+), 4 deletions(-) diff --git a/shared-modules/final-project/Frontend.md b/shared-modules/final-project/Frontend.md index d47b4840..b60dfb2f 100644 --- a/shared-modules/final-project/Frontend.md +++ b/shared-modules/final-project/Frontend.md @@ -1,11 +1,44 @@ # Frontend Requirements +This document describes all requirements that you _must_ complete as part of finishing your project. You are strongly encouraged to implement your own ideas to showcase the range of your technical abilities - now is the time to push yourself! Don't forget to implement the requirements below, first, though. + +## Product Requirements + +Users must be able to: + +- [ ] Easily understand the purpose of the app and who it's for +- [ ] Experience a consistent design throughout the app +- [ ] Sign up and log in +- [ ] Navigate between and use 3 (or more) distinct screens/pages +- [ ] View dynamic data/content (e.g. from an external API) +- [ ] Input, modify and submit persistent data (e.g. that saves across sessions) +- [ ] Receive feedback on their actions (e.g. loading, button clicks, input validation) +- [ ] Recover gracefully in the case of issues (e.g. missing data, api errors, invalid forms) +- [ ] Use the application on both desktop and mobile + ## Technical Requirements -These technical requirements are designed to showcase all the skills you've learned along the program. +- [ ] User mangement + - [ ] Basic access control (e.g. logged in and logged out users have appropriate access) + - [ ] Session management (e.g. to maintain user state during their use of the app) + +- [ ] Data + - [ ] Use 1 (or more) external APIs to support your apps dynamic features + - [ ] Store appropriate data persistently (e.g. via an API and/or local storage) + +- [ ] Security and error handling + - [ ] Input sanitisation - Ensure all user input is cleaned to prevent security vulnerabilities + - [ ] Form validation - Validate user input to make sure they fit appropriate criteria (e.g. strong passwords) + - [ ] Error handling - Sufficient handling of issues and errors to avoid the app breaking -TODO +- [ ] Architecture + - [ ] Component-based architecture + - [ ] Handle routing of multiple pages with React Router +- [ ] UX and Design + - [ ] Responsive design (e.g. a layout that adapts to different screen sizes graciously) + - [ ] Consistent styling approach (e.g. component-specific styles, CSS modules) + - [ ] Basic accessibility (e.g. semantic HTML, alt-text, keyboard navigation on forms) ## Organisational Requirements @@ -19,6 +52,14 @@ TODO ## Deliverables -These are all of the required items you need to deliver to complete the project. +To submit your finished project, you will need: -TODO \ No newline at end of file +- [ ] A deployed and working app accessible via the browser with a public URL +- [ ] Code versioned using git along with meaningful commit messages +- [ ] Code pushed to a public GitHub repo on your profile +- [ ] A README in the root of your repo including: + - [ ] A project description + - [ ] How to run it locally + - [ ] A link to your deployed app + - [ ] Key technical summary & decisions + - [ ] Known limitations & future improvements From ae0d485a3f2f02baeb299db8ac63a2e2bcb8d999 Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Thu, 15 Jan 2026 10:26:57 +0100 Subject: [PATCH 04/15] intial backend requirements --- shared-modules/final-project/Backend.md | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/shared-modules/final-project/Backend.md b/shared-modules/final-project/Backend.md index 3438818e..a9c3b327 100644 --- a/shared-modules/final-project/Backend.md +++ b/shared-modules/final-project/Backend.md @@ -1,11 +1,16 @@ # Backend Requirements -## Technical Requirements +This document describes all requirements that you _must_ complete as part of finishing your project. You are strongly encouraged to implement your own ideas to showcase the range of your technical abilities - now is the time to push yourself! Don't forget to implement the requirements below, first, though. + +## Product Requirements -These technical requirements are designed to showcase all the skills you've learned along the program. +Users must be able to: TODO +## Technical Requirements + +TODO ## Organisational Requirements @@ -19,6 +24,16 @@ TODO ## Deliverables -These are all of the required items you need to deliver to complete the project. - -TODO \ No newline at end of file +To submit your finished project, you will need: + +- [ ] A deployed and working API accessible via a public URL +- [ ] Deployed and viewable API docs describing all of your functionality +- [ ] A PostMan collection and test script(s) to demo your API +- [ ] Code versioned using git along with meaningful commit messages +- [ ] Code pushed to a public GitHub repo on your profile +- [ ] A README in the root of your repo including: + - [ ] A project description + - [ ] How to run it locally + - [ ] A link to your deployed API, docs and PostMan deliverables + - [ ] Key technical summary & decisions + - [ ] Known limitations & future improvements From 4231d39fd3bce91385a2e2bce941a6dff6c24e2a Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Thu, 15 Jan 2026 10:27:48 +0100 Subject: [PATCH 05/15] linting --- shared-modules/final-project/Backend.md | 10 +++---- shared-modules/final-project/Frontend.md | 34 ++++++++++++------------ shared-modules/final-project/README.md | 5 ++-- 3 files changed, 25 insertions(+), 24 deletions(-) diff --git a/shared-modules/final-project/Backend.md b/shared-modules/final-project/Backend.md index a9c3b327..0fb48608 100644 --- a/shared-modules/final-project/Backend.md +++ b/shared-modules/final-project/Backend.md @@ -32,8 +32,8 @@ To submit your finished project, you will need: - [ ] Code versioned using git along with meaningful commit messages - [ ] Code pushed to a public GitHub repo on your profile - [ ] A README in the root of your repo including: - - [ ] A project description - - [ ] How to run it locally - - [ ] A link to your deployed API, docs and PostMan deliverables - - [ ] Key technical summary & decisions - - [ ] Known limitations & future improvements + - [ ] A project description + - [ ] How to run it locally + - [ ] A link to your deployed API, docs and PostMan deliverables + - [ ] Key technical summary & decisions + - [ ] Known limitations & future improvements diff --git a/shared-modules/final-project/Frontend.md b/shared-modules/final-project/Frontend.md index b60dfb2f..bdab47d9 100644 --- a/shared-modules/final-project/Frontend.md +++ b/shared-modules/final-project/Frontend.md @@ -19,26 +19,26 @@ Users must be able to: ## Technical Requirements - [ ] User mangement - - [ ] Basic access control (e.g. logged in and logged out users have appropriate access) - - [ ] Session management (e.g. to maintain user state during their use of the app) + - [ ] Basic access control (e.g. logged in and logged out users have appropriate access) + - [ ] Session management (e.g. to maintain user state during their use of the app) - [ ] Data - - [ ] Use 1 (or more) external APIs to support your apps dynamic features - - [ ] Store appropriate data persistently (e.g. via an API and/or local storage) + - [ ] Use 1 (or more) external APIs to support your apps dynamic features + - [ ] Store appropriate data persistently (e.g. via an API and/or local storage) - [ ] Security and error handling - - [ ] Input sanitisation - Ensure all user input is cleaned to prevent security vulnerabilities - - [ ] Form validation - Validate user input to make sure they fit appropriate criteria (e.g. strong passwords) - - [ ] Error handling - Sufficient handling of issues and errors to avoid the app breaking + - [ ] Input sanitisation - Ensure all user input is cleaned to prevent security vulnerabilities + - [ ] Form validation - Validate user input to make sure they fit appropriate criteria (e.g. strong passwords) + - [ ] Error handling - Sufficient handling of issues and errors to avoid the app breaking - [ ] Architecture - - [ ] Component-based architecture - - [ ] Handle routing of multiple pages with React Router + - [ ] Component-based architecture + - [ ] Handle routing of multiple pages with React Router - [ ] UX and Design - - [ ] Responsive design (e.g. a layout that adapts to different screen sizes graciously) - - [ ] Consistent styling approach (e.g. component-specific styles, CSS modules) - - [ ] Basic accessibility (e.g. semantic HTML, alt-text, keyboard navigation on forms) + - [ ] Responsive design (e.g. a layout that adapts to different screen sizes graciously) + - [ ] Consistent styling approach (e.g. component-specific styles, CSS modules) + - [ ] Basic accessibility (e.g. semantic HTML, alt-text, keyboard navigation on forms) ## Organisational Requirements @@ -58,8 +58,8 @@ To submit your finished project, you will need: - [ ] Code versioned using git along with meaningful commit messages - [ ] Code pushed to a public GitHub repo on your profile - [ ] A README in the root of your repo including: - - [ ] A project description - - [ ] How to run it locally - - [ ] A link to your deployed app - - [ ] Key technical summary & decisions - - [ ] Known limitations & future improvements + - [ ] A project description + - [ ] How to run it locally + - [ ] A link to your deployed app + - [ ] Key technical summary & decisions + - [ ] Known limitations & future improvements diff --git a/shared-modules/final-project/README.md b/shared-modules/final-project/README.md index c93b4d48..71b3e4f0 100644 --- a/shared-modules/final-project/README.md +++ b/shared-modules/final-project/README.md @@ -1,4 +1,5 @@ # Final Project + This module contains information about the final module of the program, where you will take everything you have learned so far and work together as a team to build a final project together. This module usually runs for 4-5 weeks. @@ -13,7 +14,7 @@ Alternatively, when possible, we can run them as: ## Learning Goals -These goals are required regardless of how the final project is organised. +These goals are required regardless of how the final project is organised. By the end of this session, you will be able to: @@ -25,7 +26,7 @@ By the end of this session, you will be able to: - [ ] Interpret a problem statement and specs/wireframes/prototypes into buildable requirements - [ ] Break down bigger problems into smaller, actionable written tasks - [ ] Work in iterative sprints and achieve deadlines -- [ ] Ask for help effectively and at the right time (e.g. describing problems to mentors, asking online, and knowing the power *and* limitations of using AI) +- [ ] Ask for help effectively and at the right time (e.g. describing problems to mentors, asking online, and knowing the power _and_ limitations of using AI) - [ ] Deploy a completed project you are proud to showcase on your portfolio ## Requirements From 7e3973defd4dfc67a378e79b70f18bc1fcd2fe8e Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Thu, 15 Jan 2026 10:31:11 +0100 Subject: [PATCH 06/15] Added the docs to the gitbook sidebar while we review them --- SUMMARY.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/SUMMARY.md b/SUMMARY.md index 19567084..46a871dd 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -172,6 +172,9 @@ - [Session Plan](shared-modules/using-ai-in-development/week1/session-plan.md) - [Assignment](shared-modules/using-ai-in-development/week1/assignment.md) - [Specialist Career Training](shared-modules/specialist-career-training/README.md) + - [Specialism Final Projects](shared-modules/final-project/README.md) + - [Frontend Course Requirements](shared-modules/final-project/Frontend.md) + - [Backend Course Requirements](shared-modules/final-project/Backend.md) ## Guidelines From c294e3a26412edcdedc27c8c66aa43f999fa4f9c Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Thu, 15 Jan 2026 10:33:16 +0100 Subject: [PATCH 07/15] linting --- SUMMARY.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/SUMMARY.md b/SUMMARY.md index 46a871dd..6b8384b2 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -173,8 +173,8 @@ - [Assignment](shared-modules/using-ai-in-development/week1/assignment.md) - [Specialist Career Training](shared-modules/specialist-career-training/README.md) - [Specialism Final Projects](shared-modules/final-project/README.md) - - [Frontend Course Requirements](shared-modules/final-project/Frontend.md) - - [Backend Course Requirements](shared-modules/final-project/Backend.md) + - [Frontend Course Requirements](shared-modules/final-project/Frontend.md) + - [Backend Course Requirements](shared-modules/final-project/Backend.md) ## Guidelines From 861e77e1a87aa4df4f27b8d65d7557cc01352bca Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Mon, 19 Jan 2026 15:41:01 +0100 Subject: [PATCH 08/15] Updated file structure to fit into individual courses --- courses/backend/final-project/README.md | 35 +++++++++++++++++-- .../final-project/backend-requirements.md | 0 courses/backend/final-project/session-plan.md | 3 ++ courses/frontend/final-project/README.md | 35 +++++++++++++++++-- .../final-project/frontend-requirements.md | 0 .../frontend/final-project/session-plan.md | 3 ++ 6 files changed, 72 insertions(+), 4 deletions(-) rename shared-modules/final-project/Backend.md => courses/backend/final-project/backend-requirements.md (100%) create mode 100644 courses/backend/final-project/session-plan.md rename shared-modules/final-project/Frontend.md => courses/frontend/final-project/frontend-requirements.md (100%) create mode 100644 courses/frontend/final-project/session-plan.md diff --git a/courses/backend/final-project/README.md b/courses/backend/final-project/README.md index 325a1375..75c95624 100644 --- a/courses/backend/final-project/README.md +++ b/courses/backend/final-project/README.md @@ -1,3 +1,34 @@ -# Final project (back end) +# Final Project (Backend) -Coming soon +This module contains information about the final module of the program, where you will take everything you have learned so far and work together as a team to build a final project together. + +This module usually runs for 4-5 weeks. + +The final project can be organised differently, depending on the team responsible, mentors and the opportunities available at the time. The default option is to run it with: + +1. Trainee-proposed projects (e.g. [example project proposal](https://docs.google.com/document/d/1558NnZ0Fuwol-UhZIo9YcxxO1UtI7vJOWYgkBmF2EPc/edit)) and built using [HYF Project Template](https://github.com/HackYourFuture-CPH/hyf-project-template) + +Alternatively, when possible, we can run them as: + +2. Client-driven projects designed in collaboration with a real client partner, built using their own templates and starting codebase. + +## Learning Goals + +These goals are required regardless of how the final project is organised. + +By the end of this session, you will be able to: + +- [ ] Collaborate effectively in a team setting + - [ ] Read and extend/improve other peoples code + - [ ] Give and receive constructive PR feedback + - [ ] Plan, communicate and coordinate technical tasks / solutions upfront before implementation +- [ ] Develop self-guided learning skills (e.g. learn to read documetation for a new tool or API) +- [ ] Interpret a problem statement and specs/wireframes/prototypes into buildable requirements +- [ ] Break down bigger problems into smaller, actionable written tasks +- [ ] Work in iterative sprints and achieve deadlines +- [ ] Ask for help effectively and at the right time (e.g. describing problems to mentors, asking online, and knowing the power _and_ limitations of using AI) +- [ ] Deploy a completed project you are proud to showcase on your portfolio + +## Requirements + +See [Backend Requirements](backend-requirements.md). diff --git a/shared-modules/final-project/Backend.md b/courses/backend/final-project/backend-requirements.md similarity index 100% rename from shared-modules/final-project/Backend.md rename to courses/backend/final-project/backend-requirements.md diff --git a/courses/backend/final-project/session-plan.md b/courses/backend/final-project/session-plan.md new file mode 100644 index 00000000..e449f38e --- /dev/null +++ b/courses/backend/final-project/session-plan.md @@ -0,0 +1,3 @@ +# Session Plan + +TODO diff --git a/courses/frontend/final-project/README.md b/courses/frontend/final-project/README.md index 7336a405..15d9b23c 100644 --- a/courses/frontend/final-project/README.md +++ b/courses/frontend/final-project/README.md @@ -1,3 +1,34 @@ -# Final project (front-end) +# Final Project (Frontend) -Coming soon +This module contains information about the final module of the program, where you will take everything you have learned so far and work together as a team to build a final project together. + +This module usually runs for 4-5 weeks. + +The final project can be organised differently, depending on the team responsible, mentors and the opportunities available at the time. The default option is to run it with: + +1. Trainee-proposed projects (e.g. [example project proposal](https://docs.google.com/document/d/1558NnZ0Fuwol-UhZIo9YcxxO1UtI7vJOWYgkBmF2EPc/edit)) and built using [HYF Project Template](https://github.com/HackYourFuture-CPH/hyf-project-template) + +Alternatively, when possible, we can run them as: + +2. Client-driven projects designed in collaboration with a real client partner, built using their own templates and starting codebase. + +## Learning Goals + +These goals are required regardless of how the final project is organised. + +By the end of this session, you will be able to: + +- [ ] Collaborate effectively in a team setting + - [ ] Read and extend/improve other peoples code + - [ ] Give and receive constructive PR feedback + - [ ] Plan, communicate and coordinate technical tasks / solutions upfront before implementation +- [ ] Develop self-guided learning skills (e.g. learn to read documetation for a new tool or API) +- [ ] Interpret a problem statement and specs/wireframes/prototypes into buildable requirements +- [ ] Break down bigger problems into smaller, actionable written tasks +- [ ] Work in iterative sprints and achieve deadlines +- [ ] Ask for help effectively and at the right time (e.g. describing problems to mentors, asking online, and knowing the power _and_ limitations of using AI) +- [ ] Deploy a completed project you are proud to showcase on your portfolio + +## Requirements + +See [Frontend Requirements](frontend-requirements.md). diff --git a/shared-modules/final-project/Frontend.md b/courses/frontend/final-project/frontend-requirements.md similarity index 100% rename from shared-modules/final-project/Frontend.md rename to courses/frontend/final-project/frontend-requirements.md diff --git a/courses/frontend/final-project/session-plan.md b/courses/frontend/final-project/session-plan.md new file mode 100644 index 00000000..d09367cf --- /dev/null +++ b/courses/frontend/final-project/session-plan.md @@ -0,0 +1,3 @@ +# Session Plan + +TODO \ No newline at end of file From 1d59d921bae91977979eac32f4ed7b4938876f91 Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Mon, 19 Jan 2026 15:44:47 +0100 Subject: [PATCH 09/15] Added outline for presentation in foundation fp --- .../foundation/final-project/session-plan.md | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/courses/foundation/final-project/session-plan.md b/courses/foundation/final-project/session-plan.md index f1059776..1aa00f34 100644 --- a/courses/foundation/final-project/session-plan.md +++ b/courses/foundation/final-project/session-plan.md @@ -22,3 +22,29 @@ Note: Trainees will work in pairs to compelete the project. These pairs will hav - Teaching moment: If there were any significant issues or confusions that came up, spend some time diving into them in detail. - Introduce the next milestone: Talk through the next requirements in detail, and answer any questions. - Pairing time: Allow space for the trainees to continue working on their project, answering any questions as they come up with the whole team. + +### The final session + +The final session acts as a showcase for the projects. Here is an outline that can be shared with trainees: + +``` +🎮 Final Project Presentation Guidelines +When: 3rd week of the Foundation project +Duration: 7–10 minutes per team + +Presentation structure: + +1. Start with your Trello board → Explain your workflow, task organization, and process. + +2. Show your project → Demonstrate the working game/application. + +3. Talk about contributions → Each team member should briefly explain what they worked on. + +Requirements before presentation day: +✅ Project must be fully deployed and live. +✅ Prepare a QR code linking to your live project. + +During the session: + +Share the QR code so other teams can test your game on their devices. +``` From 1a1417b98f83a92834c2fe064dc35ec942719687 Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Mon, 19 Jan 2026 15:47:38 +0100 Subject: [PATCH 10/15] Update summary.md with new file structure --- SUMMARY.md | 11 +++++--- shared-modules/final-project/README.md | 37 -------------------------- 2 files changed, 8 insertions(+), 40 deletions(-) delete mode 100644 shared-modules/final-project/README.md diff --git a/SUMMARY.md b/SUMMARY.md index 6b8384b2..fc7294fa 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -121,6 +121,12 @@ - [Session Plan](courses/frontend/react/week5/session-plan.md) - [Assignment](courses/frontend/react/week5/assignment.md) - [Final Frontend Project](courses/frontend/final-project/README.md) + - [Requirements](courses/frontend/final-project/frontend-requirements.md) + - [Session Plan](courses/frontend/final-project/session-plan.md) + + - [Foundation Project](courses/foundation/final-project/README.md) + - [Project Brief](courses/foundation/final-project/project-brief.md) + - [Session Plan](courses/foundation/final-project/session-plan.md) - [Backend](courses/backend/README.md) - [Advanced JavaScript](courses/backend/advanced-javascript/README.md) @@ -154,6 +160,8 @@ - [Session Plan](courses/backend/node/week2/session-plan.md) - [Assignment](courses/backend/node/week2/assignment.md) - [Final Backend Project](courses/backend/final-project/README.md) + - [Requirements](courses/backend/final-project/backend-requirements.md) + - [Session Plan](courses/backend/final-project/session-plan.md) - [Common Modules](shared-modules/README.md) - [Collaboration via GitHub](shared-modules/collaboration-via-github/README.md) @@ -172,9 +180,6 @@ - [Session Plan](shared-modules/using-ai-in-development/week1/session-plan.md) - [Assignment](shared-modules/using-ai-in-development/week1/assignment.md) - [Specialist Career Training](shared-modules/specialist-career-training/README.md) - - [Specialism Final Projects](shared-modules/final-project/README.md) - - [Frontend Course Requirements](shared-modules/final-project/Frontend.md) - - [Backend Course Requirements](shared-modules/final-project/Backend.md) ## Guidelines diff --git a/shared-modules/final-project/README.md b/shared-modules/final-project/README.md deleted file mode 100644 index 71b3e4f0..00000000 --- a/shared-modules/final-project/README.md +++ /dev/null @@ -1,37 +0,0 @@ -# Final Project - -This module contains information about the final module of the program, where you will take everything you have learned so far and work together as a team to build a final project together. - -This module usually runs for 4-5 weeks. - -The final project can be organised differently, depending on the team responsible, mentors and the opportunities available at the time. The default option is to run it with: - -1. Trainee-proposed projects (e.g. [example project proposal](https://docs.google.com/document/d/1558NnZ0Fuwol-UhZIo9YcxxO1UtI7vJOWYgkBmF2EPc/edit)) and built using [HYF Project Template](https://github.com/HackYourFuture-CPH/hyf-project-template) - -Alternatively, when possible, we can run them as: - -2. Client-driven projects designed in collaboration with a real client partner, built using their own templates and starting codebase. - -## Learning Goals - -These goals are required regardless of how the final project is organised. - -By the end of this session, you will be able to: - -- [ ] Collaborate effectively in a team setting - - [ ] Read and extend/improve other peoples code - - [ ] Give and receive constructive PR feedback - - [ ] Plan, communicate and coordinate technical tasks / solutions upfront before implementation -- [ ] Develop self-guided learning skills (e.g. learn to read documetation for a new tool or API) -- [ ] Interpret a problem statement and specs/wireframes/prototypes into buildable requirements -- [ ] Break down bigger problems into smaller, actionable written tasks -- [ ] Work in iterative sprints and achieve deadlines -- [ ] Ask for help effectively and at the right time (e.g. describing problems to mentors, asking online, and knowing the power _and_ limitations of using AI) -- [ ] Deploy a completed project you are proud to showcase on your portfolio - -## Requirements - -The specific requirements differ between specialisms. See the below: - -1. [Frontend Requirements](Frontend.md) -2. [Backend Requirements](Backend.md) From 5cc4ac29c8a66c5f247e40addb578a05b219b7bc Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Mon, 19 Jan 2026 15:48:15 +0100 Subject: [PATCH 11/15] Linting fixes --- courses/foundation/final-project/session-plan.md | 2 +- courses/frontend/final-project/session-plan.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/courses/foundation/final-project/session-plan.md b/courses/foundation/final-project/session-plan.md index 1aa00f34..bd90eb62 100644 --- a/courses/foundation/final-project/session-plan.md +++ b/courses/foundation/final-project/session-plan.md @@ -27,7 +27,7 @@ Note: Trainees will work in pairs to compelete the project. These pairs will hav The final session acts as a showcase for the projects. Here is an outline that can be shared with trainees: -``` +```plaintext 🎮 Final Project Presentation Guidelines When: 3rd week of the Foundation project Duration: 7–10 minutes per team diff --git a/courses/frontend/final-project/session-plan.md b/courses/frontend/final-project/session-plan.md index d09367cf..e449f38e 100644 --- a/courses/frontend/final-project/session-plan.md +++ b/courses/frontend/final-project/session-plan.md @@ -1,3 +1,3 @@ # Session Plan -TODO \ No newline at end of file +TODO From 6db5271ec98da1848ff965f3d31fc5e315adbd76 Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Tue, 20 Jan 2026 12:38:42 +0100 Subject: [PATCH 12/15] Removed error in summary.md --- SUMMARY.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/SUMMARY.md b/SUMMARY.md index fc7294fa..bca14933 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -124,10 +124,6 @@ - [Requirements](courses/frontend/final-project/frontend-requirements.md) - [Session Plan](courses/frontend/final-project/session-plan.md) - - [Foundation Project](courses/foundation/final-project/README.md) - - [Project Brief](courses/foundation/final-project/project-brief.md) - - [Session Plan](courses/foundation/final-project/session-plan.md) - - [Backend](courses/backend/README.md) - [Advanced JavaScript](courses/backend/advanced-javascript/README.md) - [Databases](courses/backend/databases/README.md) From 265d29c61a671e7159dae66749d2c766eda72efb Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Tue, 20 Jan 2026 12:40:35 +0100 Subject: [PATCH 13/15] Updated requirements link to match name in gitbook --- courses/backend/final-project/README.md | 2 +- courses/frontend/final-project/README.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/courses/backend/final-project/README.md b/courses/backend/final-project/README.md index 75c95624..1ddcadf1 100644 --- a/courses/backend/final-project/README.md +++ b/courses/backend/final-project/README.md @@ -31,4 +31,4 @@ By the end of this session, you will be able to: ## Requirements -See [Backend Requirements](backend-requirements.md). +See [Requirements](backend-requirements.md). diff --git a/courses/frontend/final-project/README.md b/courses/frontend/final-project/README.md index 15d9b23c..9715e735 100644 --- a/courses/frontend/final-project/README.md +++ b/courses/frontend/final-project/README.md @@ -31,4 +31,4 @@ By the end of this session, you will be able to: ## Requirements -See [Frontend Requirements](frontend-requirements.md). +See [Requirements](frontend-requirements.md). From 0ec5233a39266c57fe41899ceeb04605114ec11d Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Tue, 20 Jan 2026 12:44:12 +0100 Subject: [PATCH 14/15] Rename to just final project everywhere --- SUMMARY.md | 4 ++-- courses/backend/README.md | 4 ++-- courses/frontend/README.md | 4 ++-- support/src/documentationHelpers/programStructure.json | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/SUMMARY.md b/SUMMARY.md index bca14933..9700e8e2 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -120,7 +120,7 @@ - [Preparation](courses/frontend/react/week5/preparation.md) - [Session Plan](courses/frontend/react/week5/session-plan.md) - [Assignment](courses/frontend/react/week5/assignment.md) - - [Final Frontend Project](courses/frontend/final-project/README.md) + - [Final Project](courses/frontend/final-project/README.md) - [Requirements](courses/frontend/final-project/frontend-requirements.md) - [Session Plan](courses/frontend/final-project/session-plan.md) @@ -155,7 +155,7 @@ - [Preparation](courses/backend/node/week2/preparation.md) - [Session Plan](courses/backend/node/week2/session-plan.md) - [Assignment](courses/backend/node/week2/assignment.md) - - [Final Backend Project](courses/backend/final-project/README.md) + - [Final Project](courses/backend/final-project/README.md) - [Requirements](courses/backend/final-project/backend-requirements.md) - [Session Plan](courses/backend/final-project/session-plan.md) diff --git a/courses/backend/README.md b/courses/backend/README.md index 3a33cdc7..03c10df1 100644 --- a/courses/backend/README.md +++ b/courses/backend/README.md @@ -13,7 +13,7 @@ This specialism course is focused on setting you up to land a Backend Developer | [Node.js](./node/README.md) | 2 | | [Specialist Career Training](/shared-modules/specialist-career-training/README.md) | 2 | | [Agile Teamwork](/shared-modules/agile-teamwork/README.md) | 1 | -| [Final project](./final-project/README.md) | 5 | +| [Final Project](./final-project/README.md) | 5 | Total: 18 weeks @@ -81,7 +81,7 @@ Total: 18 weeks - [ ] Understand how these skills and practices impact and support agility - [ ] Be able to organise a very well structured project in collaboration with other developers for the final project -### [Final Backend Project](/courses/backend/final-project) +### [Final Project](/courses/backend/final-project) > ⚠️ "Learning goals" section is empty in `courses/backend/final-project` diff --git a/courses/frontend/README.md b/courses/frontend/README.md index 7d9745a5..7a154d30 100644 --- a/courses/frontend/README.md +++ b/courses/frontend/README.md @@ -12,7 +12,7 @@ This specialism course is focused on setting you up to land a Frontend Developer | [React](./react/README.md) | 5 | | [Specialist Career Training](/shared-modules/specialist-career-training/README.md) | 2 | | [Agile Teamwork](/shared-modules/agile-teamwork/README.md) | 1 | -| [Final project](./final-project/README.md) | 5 | +| [Final Project](./final-project/README.md) | 5 | Total: 19 weeks @@ -74,7 +74,7 @@ Total: 19 weeks - [ ] Understand how these skills and practices impact and support agility - [ ] Be able to organise a very well structured project in collaboration with other developers for the final project -### [Final Frontend Project](/courses/frontend/final-project) +### [Final Project](/courses/frontend/final-project) > ⚠️ "Learning goals" section is empty in `courses/frontend/final-project` diff --git a/support/src/documentationHelpers/programStructure.json b/support/src/documentationHelpers/programStructure.json index 29396d76..17ed6f13 100644 --- a/support/src/documentationHelpers/programStructure.json +++ b/support/src/documentationHelpers/programStructure.json @@ -83,7 +83,7 @@ "location": "shared-modules/agile-teamwork" }, { - "name": "Final Backend Project", + "name": "Final Project", "location": "courses/backend/final-project" } ] @@ -117,7 +117,7 @@ "location": "shared-modules/agile-teamwork" }, { - "name": "Final Frontend Project", + "name": "Final Project", "location": "courses/frontend/final-project" } ] From 1a8d716b83db1294db6160a485b96a544226e1e3 Mon Sep 17 00:00:00 2001 From: Adam Blanchard Date: Tue, 20 Jan 2026 12:46:08 +0100 Subject: [PATCH 15/15] updated learning goal overview on courses --- courses/backend/README.md | 11 ++++++++++- courses/frontend/README.md | 11 ++++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/courses/backend/README.md b/courses/backend/README.md index 03c10df1..c1e51d8e 100644 --- a/courses/backend/README.md +++ b/courses/backend/README.md @@ -83,7 +83,16 @@ Total: 18 weeks ### [Final Project](/courses/backend/final-project) -> ⚠️ "Learning goals" section is empty in `courses/backend/final-project` +- [ ] Collaborate effectively in a team setting + - [ ] Read and extend/improve other peoples code + - [ ] Give and receive constructive PR feedback + - [ ] Plan, communicate and coordinate technical tasks / solutions upfront before implementation +- [ ] Develop self-guided learning skills (e.g. learn to read documetation for a new tool or API) +- [ ] Interpret a problem statement and specs/wireframes/prototypes into buildable requirements +- [ ] Break down bigger problems into smaller, actionable written tasks +- [ ] Work in iterative sprints and achieve deadlines +- [ ] Ask for help effectively and at the right time (e.g. describing problems to mentors, asking online, and knowing the power _and_ limitations of using AI) +- [ ] Deploy a completed project you are proud to showcase on your portfolio diff --git a/courses/frontend/README.md b/courses/frontend/README.md index 7a154d30..798069b5 100644 --- a/courses/frontend/README.md +++ b/courses/frontend/README.md @@ -76,7 +76,16 @@ Total: 19 weeks ### [Final Project](/courses/frontend/final-project) -> ⚠️ "Learning goals" section is empty in `courses/frontend/final-project` +- [ ] Collaborate effectively in a team setting + - [ ] Read and extend/improve other peoples code + - [ ] Give and receive constructive PR feedback + - [ ] Plan, communicate and coordinate technical tasks / solutions upfront before implementation +- [ ] Develop self-guided learning skills (e.g. learn to read documetation for a new tool or API) +- [ ] Interpret a problem statement and specs/wireframes/prototypes into buildable requirements +- [ ] Break down bigger problems into smaller, actionable written tasks +- [ ] Work in iterative sprints and achieve deadlines +- [ ] Ask for help effectively and at the right time (e.g. describing problems to mentors, asking online, and knowing the power _and_ limitations of using AI) +- [ ] Deploy a completed project you are proud to showcase on your portfolio