feat: integrate The Odin Project (#48617)

* feat: integrate the odin project

* feat: add assignment to markdown parser

* feat: add assignment logic

* fix: doe not always show assignment block

* fix: some other stuff

* fix: introdiction to html and css questions

* fix: remove assignments after first question

* fix: update snapshots and tests

* feat: create rest of HTML foundation course structure

* feat: meta file

* feat: add descriptions to 'html boiler plate' questions

* feat: add description for 'working with text and list items'

* fix: multiple logic issues

* fix: make linter happy

* feat: add description for 'links and images' questions

* fix: add assignments to Joi schema

* fix: tests

* fix: schema

* fix: add help category

* fix: change to possessive wording

* fix: set upcoming change to true in meta file

* fix: spell unordered and ordered correctly

* fix: switch order in meta

* fix: spell boilerplate correctly

* feat: add final project

* chore: add more tests to the final project

* fix: question spelling

* Apply suggestions from code review

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>

* Apply suggestions from code review

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>

* Apply suggestions from code review

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>

* Apply suggestions from code review

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>

* Apply suggestions from code review

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>

* Apply suggestions from code review

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>

* fix: translation

* Update client/i18n/locales/english/translations.json

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

* fix: create new challenge type

* fix: get the new challenge type working and remove ol css

* fix: translation location

* fix: add challenge type to epic

* fix: set correct video

* fix: max challengeType number

* fix: spelling/grammar errors in project

* fix: check if anchor tags is empty

* Apply suggestions from code review

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

* Update tools/challenge-parser/parser/plugins/add-video-question.js

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

* chore: multiple suggestions

* chore: separate assignments into different plugin

* Apply suggestions from code review

Co-authored-by: Kristofer Koishigawa <scissorsneedfoodtoo@gmail.com>

* fix: dubble answer header after review

* fix: issue with Gatsby hopefully

* fix: add assignments to Gatsby's Challenge schema

* Update curriculum/schema/challengeSchema.js

Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>

Co-authored-by: Naomi Carrigan <nhcarrigan@gmail.com>
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com>
Co-authored-by: Kristofer Koishigawa <scissorsneedfoodtoo@gmail.com>
This commit is contained in:
Sem Bauke
2023-01-19 13:55:26 +01:00
committed by GitHub
parent 5bc8c5d2d0
commit df53c7778c
47 changed files with 2506 additions and 50 deletions
+7 -3
View File
@@ -14,6 +14,7 @@ const video = 11;
const codeAllyPractice = 12;
const codeAllyCert = 13;
const multifileCertProject = 14;
const theOdinProject = 15;
// individual exports
exports.backend = backend;
@@ -38,7 +39,8 @@ exports.challengeTypes = {
video,
codeAllyPractice,
codeAllyCert,
multifileCertProject
multifileCertProject,
theOdinProject
};
exports.isFinalProject = challengeType => {
@@ -75,7 +77,8 @@ exports.viewTypes = {
[video]: 'video',
[codeAllyPractice]: 'codeAlly',
[codeAllyCert]: 'codeAlly',
[multifileCertProject]: 'classic'
[multifileCertProject]: 'classic',
[theOdinProject]: 'odin'
};
// determine the type of submit function to use for the challenge on completion
@@ -97,7 +100,8 @@ exports.submitTypes = {
[modern]: 'tests',
[video]: 'tests',
[codeAllyCert]: 'project.frontEnd',
[multifileCertProject]: 'tests'
[multifileCertProject]: 'tests',
[theOdinProject]: 'tests'
};
// determine which help forum questions should be posted to
@@ -32,13 +32,19 @@ const video = path.resolve(
'../../src/templates/Challenges/video/Show.tsx'
);
const odin = path.resolve(
__dirname,
'../../src/templates/Challenges/odin/Show.tsx'
);
const views = {
backend,
classic,
modern: classic,
frontend,
video,
codeAlly
codeAlly,
odin
// quiz: Quiz
};
+1
View File
@@ -42,6 +42,7 @@
"algorithms": "JavaScript",
"data-structures": "JavaScript",
"take-home-projects": "JavaScript",
"the-odin-project": "JavaScript",
"rosetta-code": "JavaScript",
"project-euler": "JavaScript",
"scientific-computing-with-python": "Python",