mirror of
https://github.com/freeCodeCamp/freeCodeCamp.git
synced 2026-03-25 14:01:44 -04:00
Co-authored-by: Oliver Eyton-Williams <ojeytonwilliams@gmail.com> Co-authored-by: moT01 <20648924+moT01@users.noreply.github.com>
300 lines
9.2 KiB
JSON
300 lines
9.2 KiB
JSON
{
|
|
"chapters": [
|
|
{
|
|
"dashedName": "html",
|
|
"modules": [
|
|
{
|
|
"dashedName": "basic-html",
|
|
"blocks": [
|
|
"workshop-curriculum-outline",
|
|
"lab-debug-camperbots-profile-page",
|
|
"lecture-understanding-html-attributes",
|
|
"lab-debug-pet-adoption-page",
|
|
"lecture-understanding-the-html-boilerplate",
|
|
"workshop-cat-photo-app",
|
|
"lab-recipe-page",
|
|
"lecture-html-fundamentals",
|
|
"lecture-understanding-how-html-affects-seo",
|
|
"lab-travel-agency-page",
|
|
"lecture-working-with-audio-and-video-elements",
|
|
"lab-html-audio-and-video-player",
|
|
"lecture-working-with-images-and-svgs",
|
|
"workshop-build-a-heart-icon",
|
|
"lecture-working-with-media",
|
|
"workshop-build-a-video-display-using-iframe",
|
|
"lab-video-compilation-page",
|
|
"lecture-working-with-links",
|
|
"review-basic-html",
|
|
"quiz-basic-html"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "semantic-html",
|
|
"blocks": [
|
|
"lecture-importance-of-semantic-html",
|
|
"lecture-understanding-nuanced-semantic-elements",
|
|
"lecture-working-with-text-and-time-semantic-elements",
|
|
"lecture-working-with-specialized-semantic-elements",
|
|
"workshop-blog-page",
|
|
"lab-event-hub",
|
|
"review-semantic-html",
|
|
"quiz-semantic-html"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "html-forms-and-tables",
|
|
"blocks": [
|
|
"lecture-working-with-forms",
|
|
"workshop-hotel-feedback-form",
|
|
"lecture-working-with-tables",
|
|
"workshop-final-exams-table",
|
|
"lab-book-catalog-table",
|
|
"lecture-working-with-html-tools",
|
|
"review-html-tables-and-forms",
|
|
"quiz-html-tables-and-forms"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "lab-survey-form",
|
|
"blocks": ["lab-survey-form"]
|
|
},
|
|
{
|
|
"dashedName": "html-and-accessibility",
|
|
"blocks": [
|
|
"lecture-importance-of-accessibility-and-good-html-structure",
|
|
"workshop-debug-coding-journey-blog-page",
|
|
"lecture-accessible-tables-forms",
|
|
"workshop-tech-conference-schedule",
|
|
"lecture-introduction-to-aria",
|
|
"lecture-accessible-media-elements",
|
|
"lab-checkout-page",
|
|
"lab-movie-review-page",
|
|
"lab-multimedia-player",
|
|
"review-html-accessibility",
|
|
"quiz-html-accessibility"
|
|
]
|
|
},
|
|
{
|
|
"moduleType": "review",
|
|
"dashedName": "review-html",
|
|
"blocks": ["review-html"]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "css",
|
|
"modules": [
|
|
{
|
|
"dashedName": "computer-basics",
|
|
"blocks": [
|
|
"lecture-understanding-computer-internet-and-tooling-basics",
|
|
"lecture-working-with-file-systems",
|
|
"lecture-browsing-the-web-effectively",
|
|
"review-computer-basics",
|
|
"quiz-computer-basics"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "basic-css",
|
|
"blocks": [
|
|
"lecture-what-is-css",
|
|
"workshop-cafe-menu",
|
|
"lab-business-card",
|
|
"lecture-css-specificity-the-cascade-algorithm-and-inheritance",
|
|
"review-basic-css",
|
|
"quiz-basic-css",
|
|
"lecture-styling-lists-and-links",
|
|
"lab-stylized-to-do-list",
|
|
"lecture-working-with-backgrounds-and-borders",
|
|
"lab-blog-post-card",
|
|
"review-css-backgrounds-and-borders",
|
|
"quiz-css-backgrounds-and-borders"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "design-for-developers",
|
|
"blocks": [
|
|
"lecture-user-interface-design-fundamentals",
|
|
"lecture-user-centered-design",
|
|
"lecture-common-design-tools",
|
|
"review-design-fundamentals",
|
|
"quiz-design-fundamentals"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "absolute-and-relative-units",
|
|
"blocks": [
|
|
"lecture-working-with-relative-and-absolute-units",
|
|
"lab-event-flyer-page",
|
|
"review-css-relative-and-absolute-units",
|
|
"quiz-css-relative-and-absolute-units"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "pseudo-classes-and-elements",
|
|
"blocks": [
|
|
"lecture-working-with-pseudo-classes-and-pseudo-elements-in-css",
|
|
"workshop-greeting-card",
|
|
"lab-job-application-form",
|
|
"review-css-pseudo-classes",
|
|
"quiz-css-pseudo-classes"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "css-colors",
|
|
"blocks": [
|
|
"lecture-working-with-colors-in-css",
|
|
"workshop-colored-markers",
|
|
"lab-colored-boxes",
|
|
"review-css-colors",
|
|
"quiz-css-colors"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "styling-forms",
|
|
"blocks": [
|
|
"lecture-best-practices-for-styling-forms",
|
|
"workshop-registration-form",
|
|
"lab-contact-form",
|
|
"lab-feature-selection",
|
|
"review-styling-forms",
|
|
"quiz-styling-forms"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "css-box-model",
|
|
"blocks": [
|
|
"lecture-working-with-css-transforms-overflow-and-filters",
|
|
"workshop-rothko-painting",
|
|
"lab-confidential-email-page",
|
|
"review-css-layout-and-effects",
|
|
"quiz-css-layout-and-effects"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "css-flexbox",
|
|
"blocks": [
|
|
"lecture-working-with-css-flexbox",
|
|
"workshop-flexbox-photo-gallery",
|
|
"review-css-flexbox",
|
|
"quiz-css-flexbox"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "lab-page-of-playing-cards",
|
|
"blocks": ["lab-page-of-playing-cards"]
|
|
},
|
|
{
|
|
"dashedName": "css-typography",
|
|
"blocks": [
|
|
"lecture-working-with-css-fonts",
|
|
"workshop-nutritional-label",
|
|
"lab-newspaper-article",
|
|
"review-css-typography",
|
|
"quiz-css-typography"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "css-and-accessibility",
|
|
"blocks": [
|
|
"lecture-best-practices-for-accessibility-and-css",
|
|
"workshop-accessibility-quiz",
|
|
"lab-tribute-page",
|
|
"review-css-accessibility",
|
|
"quiz-css-accessibility"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "css-positioning",
|
|
"blocks": [
|
|
"lecture-understanding-how-to-work-with-floats-and-positioning-in-css",
|
|
"workshop-cat-painting",
|
|
"lab-house-painting",
|
|
"review-css-positioning",
|
|
"quiz-css-positioning"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "attribute-selectors",
|
|
"blocks": [
|
|
"lecture-working-with-attribute-selectors",
|
|
"workshop-balance-sheet",
|
|
"review-css-attribute-selectors",
|
|
"quiz-css-attribute-selectors"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "lab-book-inventory-app",
|
|
"blocks": ["lab-book-inventory-app"]
|
|
},
|
|
{
|
|
"dashedName": "responsive-design",
|
|
"blocks": [
|
|
"lecture-best-practices-for-responsive-web-design",
|
|
"workshop-piano",
|
|
"review-responsive-web-design",
|
|
"quiz-responsive-web-design"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "lab-technical-documentation-page",
|
|
"blocks": ["lab-technical-documentation-page"]
|
|
},
|
|
{
|
|
"dashedName": "css-variables",
|
|
"blocks": [
|
|
"lecture-working-with-css-variables",
|
|
"workshop-city-skyline",
|
|
"lab-availability-table",
|
|
"review-css-variables",
|
|
"quiz-css-variables"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "css-grid",
|
|
"blocks": [
|
|
"lecture-working-with-css-grid",
|
|
"workshop-magazine",
|
|
"lab-newspaper-layout",
|
|
"lecture-debugging-css",
|
|
"review-css-grid",
|
|
"quiz-css-grid"
|
|
]
|
|
},
|
|
{
|
|
"dashedName": "lab-product-landing-page",
|
|
"blocks": ["lab-product-landing-page"]
|
|
},
|
|
{
|
|
"dashedName": "css-animations",
|
|
"blocks": [
|
|
"lecture-animations-and-accessibility",
|
|
"workshop-ferris-wheel",
|
|
"lab-moon-orbit",
|
|
"workshop-flappy-penguin",
|
|
"lab-personal-portfolio",
|
|
"review-css-animations",
|
|
"quiz-css-animations"
|
|
]
|
|
},
|
|
{
|
|
"moduleType": "review",
|
|
"dashedName": "review-css",
|
|
"blocks": ["review-css"]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"chapterType": "exam",
|
|
"dashedName": "responsive-web-design-certification-exam",
|
|
"comingSoon": true,
|
|
"modules": [
|
|
{
|
|
"dashedName": "responsive-web-design-certification-exam",
|
|
"blocks": ["exam-responsive-web-design-certification"]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|