chore(meta): Move challenge meta to challenges root
This commit is contained in:
committed by
mrugesh mohapatra
parent
aa668ca30e
commit
ee9f6b2d72
102
curriculum/challenges/_meta/advanced-node-and-express/meta.json
Normal file
102
curriculum/challenges/_meta/advanced-node-and-express/meta.json
Normal file
@ -0,0 +1,102 @@
|
||||
{
|
||||
"name": "Advanced Node and Express",
|
||||
"dashedName": "advanced-node-and-express",
|
||||
"order": 3,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "information-security-and-quality-assurance",
|
||||
"superOrder": 6,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"5895f700f9fc0f352b528e63",
|
||||
"Set up a Template Engine"
|
||||
],
|
||||
[
|
||||
"5895f70bf9fc0f352b528e64",
|
||||
"Use a Template Engine's Powers"
|
||||
],
|
||||
[
|
||||
"5895f70cf9fc0f352b528e65",
|
||||
"Set up Passport"
|
||||
],
|
||||
[
|
||||
"5895f70cf9fc0f352b528e66",
|
||||
"Serialization of a User Object"
|
||||
],
|
||||
[
|
||||
"5895f70cf9fc0f352b528e67",
|
||||
"Implement the Serialization of a Passport User"
|
||||
],
|
||||
[
|
||||
"5895f70df9fc0f352b528e68",
|
||||
"Authentication Strategies"
|
||||
],
|
||||
[
|
||||
"5895f70df9fc0f352b528e69",
|
||||
"How to Use Passport Strategies"
|
||||
],
|
||||
[
|
||||
"5895f70df9fc0f352b528e6a",
|
||||
"Create New Middleware"
|
||||
],
|
||||
[
|
||||
"5895f70ef9fc0f352b528e6b",
|
||||
"How to Put a Profile Together"
|
||||
],
|
||||
[
|
||||
"58965611f9fc0f352b528e6c",
|
||||
"Logging a User Out"
|
||||
],
|
||||
[
|
||||
"58966a17f9fc0f352b528e6d",
|
||||
"Registration of New Users"
|
||||
],
|
||||
[
|
||||
"58a25c98f9fc0f352b528e7f",
|
||||
"Hashing Your Passwords"
|
||||
],
|
||||
[
|
||||
"589690e6f9fc0f352b528e6e",
|
||||
"Clean Up Your Project with Modules"
|
||||
],
|
||||
[
|
||||
"589a69f5f9fc0f352b528e70",
|
||||
"Implementation of Social Authentication"
|
||||
],
|
||||
[
|
||||
"589a69f5f9fc0f352b528e71",
|
||||
"Implementation of Social Authentication II"
|
||||
],
|
||||
[
|
||||
"589a8eb3f9fc0f352b528e72",
|
||||
"Implementation of Social Authentication III"
|
||||
],
|
||||
[
|
||||
"589fc830f9fc0f352b528e74",
|
||||
"Set up the Environment"
|
||||
],
|
||||
[
|
||||
"589fc831f9fc0f352b528e75",
|
||||
"Communicate by Emitting"
|
||||
],
|
||||
[
|
||||
"589fc831f9fc0f352b528e76",
|
||||
"Handle a Disconnect"
|
||||
],
|
||||
[
|
||||
"589fc831f9fc0f352b528e77",
|
||||
"Authentication with Socket.IO"
|
||||
],
|
||||
[
|
||||
"589fc832f9fc0f352b528e78",
|
||||
"Announce New Users"
|
||||
],
|
||||
[
|
||||
"589fc832f9fc0f352b528e79",
|
||||
"Send and Display Chat Messages"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "06-information-security-and-quality-assurance/advanced-express-tools.json"
|
||||
}
|
50
curriculum/challenges/_meta/algorithms/meta.json
Normal file
50
curriculum/challenges/_meta/algorithms/meta.json
Normal file
@ -0,0 +1,50 @@
|
||||
{
|
||||
"name": "Algorithms",
|
||||
"dashedName": "algorithms",
|
||||
"order": 1,
|
||||
"time": "",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "coding-interview-prep",
|
||||
"superOrder": 8,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"a3f503de51cf954ede28891d",
|
||||
"Find the Symmetric Difference"
|
||||
],
|
||||
[
|
||||
"a56138aff60341a09ed6c480",
|
||||
"Inventory Update"
|
||||
],
|
||||
[
|
||||
"a7bf700cd123b9a54eef01d5",
|
||||
"No Repeats Please"
|
||||
],
|
||||
[
|
||||
"a3f503de51cfab748ff001aa",
|
||||
"Pairwise"
|
||||
],
|
||||
[
|
||||
"8d5123c8c441eddfaeb5bdef",
|
||||
"Implement Bubble Sort"
|
||||
],
|
||||
[
|
||||
"587d8259367417b2b2512c85",
|
||||
"Implement Selection Sort"
|
||||
],
|
||||
[
|
||||
"587d8259367417b2b2512c86",
|
||||
"Implement Insertion Sort"
|
||||
],
|
||||
[
|
||||
"587d825a367417b2b2512c89",
|
||||
"Implement Quick Sort"
|
||||
],
|
||||
[
|
||||
"587d825c367417b2b2512c8f",
|
||||
"Implement Merge Sort"
|
||||
]
|
||||
],
|
||||
"helpRoom": "HelpJavaScript",
|
||||
"fileName": "08-coding-interview-prep/algorithms.json"
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
{
|
||||
"name": "API's and Microservices Certificate",
|
||||
"dashedName": "apis-and-microservices-certificate",
|
||||
"order": 5,
|
||||
"time": "",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "certificates",
|
||||
"superOrder": 9,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"561add10cb82ac38a17523bc",
|
||||
"API's and Microservices Certificate"
|
||||
]
|
||||
],
|
||||
"isPrivate": true,
|
||||
"fileName": "09-certificates/apis-and-microservices-certificate.json"
|
||||
}
|
102
curriculum/challenges/_meta/applied-accessibility/meta.json
Normal file
102
curriculum/challenges/_meta/applied-accessibility/meta.json
Normal file
@ -0,0 +1,102 @@
|
||||
{
|
||||
"name": "Applied Accessibility",
|
||||
"dashedName": "applied-accessibility",
|
||||
"order": 3,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "responsive-web-design",
|
||||
"superOrder": 1,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d774c367417b2b2512a9c",
|
||||
"Add a Text Alternative to Images for Visually Impaired Accessibility"
|
||||
],
|
||||
[
|
||||
"587d774c367417b2b2512a9d",
|
||||
"Know When Alt Text Should be Left Blank"
|
||||
],
|
||||
[
|
||||
"587d774d367417b2b2512a9e",
|
||||
"Use Headings to Show Hierarchical Relationships of Content"
|
||||
],
|
||||
[
|
||||
"587d774e367417b2b2512a9f",
|
||||
"Jump Straight to the Content Using the main Element"
|
||||
],
|
||||
[
|
||||
"587d774e367417b2b2512aa0",
|
||||
"Wrap Content in the article Element"
|
||||
],
|
||||
[
|
||||
"587d7787367417b2b2512aa1",
|
||||
"Make Screen Reader Navigation Easier with the header Landmark"
|
||||
],
|
||||
[
|
||||
"587d7788367417b2b2512aa2",
|
||||
"Make Screen Reader Navigation Easier with the nav Landmark"
|
||||
],
|
||||
[
|
||||
"587d7788367417b2b2512aa3",
|
||||
"Make Screen Reader Navigation Easier with the footer Landmark"
|
||||
],
|
||||
[
|
||||
"587d7789367417b2b2512aa4",
|
||||
"Improve Accessibility of Audio Content with the audio Element"
|
||||
],
|
||||
[
|
||||
"587d778a367417b2b2512aa5",
|
||||
"Improve Chart Accessibility with the figure Element"
|
||||
],
|
||||
[
|
||||
"587d778a367417b2b2512aa6",
|
||||
"Improve Form Field Accessibility with the label Element"
|
||||
],
|
||||
[
|
||||
"587d778b367417b2b2512aa7",
|
||||
"Wrap Radio Buttons in a fieldset Element for Better Accessibility"
|
||||
],
|
||||
[
|
||||
"587d778b367417b2b2512aa8",
|
||||
"Add an Accessible Date Picker"
|
||||
],
|
||||
[
|
||||
"587d778c367417b2b2512aa9",
|
||||
"Standardize Times with the HTML5 datetime Attribute"
|
||||
],
|
||||
[
|
||||
"587d778d367417b2b2512aaa",
|
||||
"Make Elements Only Visible to a Screen Reader by Using Custom CSS"
|
||||
],
|
||||
[
|
||||
"587d778e367417b2b2512aab",
|
||||
"Improve Readability with High Contrast Text"
|
||||
],
|
||||
[
|
||||
"587d778f367417b2b2512aac",
|
||||
"Avoid Colorblindness Issues by Using Sufficient Contrast"
|
||||
],
|
||||
[
|
||||
"587d778f367417b2b2512aad",
|
||||
"Avoid Colorblindness Issues by Carefully Choosing Colors that Convey Information"
|
||||
],
|
||||
[
|
||||
"587d778f367417b2b2512aae",
|
||||
"Give Links Meaning by Using Descriptive Link Text"
|
||||
],
|
||||
[
|
||||
"587d7790367417b2b2512aaf",
|
||||
"Make Links Navigatable with HTML Access Keys"
|
||||
],
|
||||
[
|
||||
"587d7790367417b2b2512ab0",
|
||||
"Use tabindex to Add Keyboard Focus to an Element"
|
||||
],
|
||||
[
|
||||
"587d7790367417b2b2512ab1",
|
||||
"Use tabindex to Specify the Order of Keyboard Focus for Several Elements"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "01-responsive-web-design/applied-accessibility.json"
|
||||
}
|
222
curriculum/challenges/_meta/applied-visual-design/meta.json
Normal file
222
curriculum/challenges/_meta/applied-visual-design/meta.json
Normal file
@ -0,0 +1,222 @@
|
||||
{
|
||||
"name": "Applied Visual Design",
|
||||
"dashedName": "applied-visual-design",
|
||||
"order": 2,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "responsive-web-design",
|
||||
"superOrder": 1,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d7791367417b2b2512ab3",
|
||||
"Create Visual Balance Using the text-align Property"
|
||||
],
|
||||
[
|
||||
"587d7791367417b2b2512ab4",
|
||||
"Adjust the Width of an Element Using the width Property"
|
||||
],
|
||||
[
|
||||
"587d7791367417b2b2512ab5",
|
||||
"Adjust the Height of an Element Using the height Property"
|
||||
],
|
||||
[
|
||||
"587d781a367417b2b2512ab7",
|
||||
"Use the strong Tag to Make Text Bold"
|
||||
],
|
||||
[
|
||||
"587d781a367417b2b2512ab8",
|
||||
"Use the u Tag to Underline Text"
|
||||
],
|
||||
[
|
||||
"587d781a367417b2b2512ab9",
|
||||
"Use the em Tag to Italicize Text"
|
||||
],
|
||||
[
|
||||
"587d781b367417b2b2512aba",
|
||||
"Use the s Tag to Strikethrough Text"
|
||||
],
|
||||
[
|
||||
"587d781b367417b2b2512abb",
|
||||
"Create a Horizontal Line Using the hr Element"
|
||||
],
|
||||
[
|
||||
"587d781b367417b2b2512abc",
|
||||
"Adjust the background-color Property of Text"
|
||||
],
|
||||
[
|
||||
"587d781b367417b2b2512abd",
|
||||
"Adjust the Size of a Header Versus a Paragraph Tag"
|
||||
],
|
||||
[
|
||||
"587d781b367417b2b2512abe",
|
||||
"Add a box-shadow to a Card-like Element"
|
||||
],
|
||||
[
|
||||
"587d781c367417b2b2512abf",
|
||||
"Decrease the Opacity of an Element"
|
||||
],
|
||||
[
|
||||
"587d781c367417b2b2512ac0",
|
||||
"Use the text-transform Property to Make Text Uppercase"
|
||||
],
|
||||
[
|
||||
"587d781c367417b2b2512ac2",
|
||||
"Set the font-size for Multiple Heading Elements"
|
||||
],
|
||||
[
|
||||
"587d781c367417b2b2512ac3",
|
||||
"Set the font-weight for Multiple Heading Elements"
|
||||
],
|
||||
[
|
||||
"587d781c367417b2b2512ac4",
|
||||
"Set the font-size of Paragraph Text"
|
||||
],
|
||||
[
|
||||
"587d781d367417b2b2512ac5",
|
||||
"Set the line-height of Paragraphs"
|
||||
],
|
||||
[
|
||||
"587d781d367417b2b2512ac8",
|
||||
"Adjust the Hover State of an Anchor Tag"
|
||||
],
|
||||
[
|
||||
"587d781e367417b2b2512ac9",
|
||||
"Change an Element's Relative Position"
|
||||
],
|
||||
[
|
||||
"587d781e367417b2b2512aca",
|
||||
"Move a Relatively Positioned Element with CSS Offsets"
|
||||
],
|
||||
[
|
||||
"587d781e367417b2b2512acb",
|
||||
"Lock an Element to its Parent with Absolute Positioning"
|
||||
],
|
||||
[
|
||||
"587d781e367417b2b2512acc",
|
||||
"Lock an Element to the Browser Window with Fixed Positioning"
|
||||
],
|
||||
[
|
||||
"587d78a3367417b2b2512ace",
|
||||
"Push Elements Left or Right with the float Property"
|
||||
],
|
||||
[
|
||||
"587d78a3367417b2b2512acf",
|
||||
"Change the Position of Overlapping Elements with the z-index Property"
|
||||
],
|
||||
[
|
||||
"587d78a3367417b2b2512ad0",
|
||||
"Center an Element Horizontally Using the margin Property"
|
||||
],
|
||||
[
|
||||
"587d78a3367417b2b2512ad1",
|
||||
"Learn about Complementary Colors"
|
||||
],
|
||||
[
|
||||
"587d78a4367417b2b2512ad2",
|
||||
"Learn about Tertiary Colors"
|
||||
],
|
||||
[
|
||||
"587d78a4367417b2b2512ad3",
|
||||
"Adjust the Color of Various Elements to Complementary Colors"
|
||||
],
|
||||
[
|
||||
"587d78a4367417b2b2512ad4",
|
||||
"Adjust the Hue of a Color"
|
||||
],
|
||||
[
|
||||
"587d78a4367417b2b2512ad5",
|
||||
"Adjust the Tone of a Color"
|
||||
],
|
||||
[
|
||||
"587d78a5367417b2b2512ad6",
|
||||
"Create a Gradual CSS Linear Gradient"
|
||||
],
|
||||
[
|
||||
"587d78a5367417b2b2512ad7",
|
||||
"Use a CSS Linear Gradient to Create a Striped Element"
|
||||
],
|
||||
[
|
||||
"587d78a5367417b2b2512ad8",
|
||||
"Create Texture by Adding a Subtle Pattern as a Background Image"
|
||||
],
|
||||
[
|
||||
"587d78a5367417b2b2512ad9",
|
||||
"Use the CSS Transform scale Property to Change the Size of an Element"
|
||||
],
|
||||
[
|
||||
"587d78a5367417b2b2512ada",
|
||||
"Use the CSS Transform scale Property to Scale an Element on Hover"
|
||||
],
|
||||
[
|
||||
"587d78a6367417b2b2512adb",
|
||||
"Use the CSS Transform Property skewX to Skew an Element Along the X-Axis"
|
||||
],
|
||||
[
|
||||
"587d78a6367417b2b2512adc",
|
||||
"Use the CSS Transform Property skewY to Skew an Element Along the Y-Axis"
|
||||
],
|
||||
[
|
||||
"587d78a6367417b2b2512add",
|
||||
"Create a Graphic Using CSS"
|
||||
],
|
||||
[
|
||||
"587d78a6367417b2b2512ade",
|
||||
"Create a More Complex Shape Using CSS and HTML"
|
||||
],
|
||||
[
|
||||
"587d78a7367417b2b2512adf",
|
||||
"Learn How the CSS @keyframes and animation Properties Work"
|
||||
],
|
||||
[
|
||||
"587d78a7367417b2b2512ae0",
|
||||
"Use CSS Animation to Change the Hover State of a Button"
|
||||
],
|
||||
[
|
||||
"58a7a6ebf9a6318348e2d5aa",
|
||||
"Modify Fill Mode of an Animation"
|
||||
],
|
||||
[
|
||||
"587d78a7367417b2b2512ae1",
|
||||
"Create Movement Using CSS Animation"
|
||||
],
|
||||
[
|
||||
"587d78a7367417b2b2512ae2",
|
||||
"Create Visual Direction by Fading an Element from Left to Right"
|
||||
],
|
||||
[
|
||||
"587d78a8367417b2b2512ae3",
|
||||
"Animate Elements Continually Using an Infinite Animation Count"
|
||||
],
|
||||
[
|
||||
"587d78a8367417b2b2512ae4",
|
||||
"Make a CSS Heartbeat using an Infinite Animation Count"
|
||||
],
|
||||
[
|
||||
"587d78a8367417b2b2512ae5",
|
||||
"Animate Elements at Variable Rates"
|
||||
],
|
||||
[
|
||||
"587d78a8367417b2b2512ae6",
|
||||
"Animate Multiple Elements at Variable Rates"
|
||||
],
|
||||
[
|
||||
"587d78a8367417b2b2512ae7",
|
||||
"Change Animation Timing with Keywords"
|
||||
],
|
||||
[
|
||||
"587d78a9367417b2b2512ae8",
|
||||
"Learn How Bezier Curves Work"
|
||||
],
|
||||
[
|
||||
"587d78a9367417b2b2512ae9",
|
||||
"Use a Bezier Curve to Move a Graphic"
|
||||
],
|
||||
[
|
||||
"587d78a9367417b2b2512aea",
|
||||
"Make Motion More Natural Using a Bezier Curve"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "01-responsive-web-design/applied-visual-design.json"
|
||||
}
|
@ -0,0 +1,78 @@
|
||||
{
|
||||
"name": "Basic Algorithm Scripting",
|
||||
"dashedName": "basic-algorithm-scripting",
|
||||
"order": 6,
|
||||
"time": "50 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "javascript-algorithms-and-data-structures",
|
||||
"superOrder": 2,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"56533eb9ac21ba0edf2244b3",
|
||||
"Convert Celsius to Fahrenheit"
|
||||
],
|
||||
[
|
||||
"a202eed8fc186c8434cb6d61",
|
||||
"Reverse a String"
|
||||
],
|
||||
[
|
||||
"a302f7aae1aa3152a5b413bc",
|
||||
"Factorialize a Number"
|
||||
],
|
||||
[
|
||||
"a26cbbe9ad8655a977e1ceb5",
|
||||
"Find the Longest Word in a String"
|
||||
],
|
||||
[
|
||||
"a789b3483989747d63b0e427",
|
||||
"Return Largest Numbers in Arrays"
|
||||
],
|
||||
[
|
||||
"acda2fb1324d9b0fa741e6b5",
|
||||
"Confirm the Ending"
|
||||
],
|
||||
[
|
||||
"afcc8d540bea9ea2669306b6",
|
||||
"Repeat a String Repeat a String"
|
||||
],
|
||||
[
|
||||
"ac6993d51946422351508a41",
|
||||
"Truncate a String"
|
||||
],
|
||||
[
|
||||
"a6e40f1041b06c996f7b2406",
|
||||
"Finders Keepers"
|
||||
],
|
||||
[
|
||||
"a77dbc43c33f39daa4429b4f",
|
||||
"Boo who"
|
||||
],
|
||||
[
|
||||
"ab6137d4e35944e21037b769",
|
||||
"Title Case a Sentence"
|
||||
],
|
||||
[
|
||||
"579e2a2c335b9d72dd32e05c",
|
||||
"Slice and Splice"
|
||||
],
|
||||
[
|
||||
"adf08ec01beb4f99fc7a68f2",
|
||||
"Falsy Bouncer"
|
||||
],
|
||||
[
|
||||
"a24c1a4622e3c05097f71d67",
|
||||
"Where do I Belong"
|
||||
],
|
||||
[
|
||||
"af2170cad53daa0770fabdea",
|
||||
"Mutations"
|
||||
],
|
||||
[
|
||||
"a9bd25c716030ec90084d8a1",
|
||||
"Chunky Monkey"
|
||||
]
|
||||
],
|
||||
"helpRoom": "HelpJavaScript",
|
||||
"fileName": "02-javascript-algorithms-and-data-structures/basic-algorithm-scripting.json"
|
||||
}
|
190
curriculum/challenges/_meta/basic-css/meta.json
Normal file
190
curriculum/challenges/_meta/basic-css/meta.json
Normal file
@ -0,0 +1,190 @@
|
||||
{
|
||||
"name": "Basic CSS",
|
||||
"dashedName": "basic-css",
|
||||
"order": 1,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "responsive-web-design",
|
||||
"superOrder": 1,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"bad87fee1348bd9aedf08803",
|
||||
"Change the Color of Text"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08805",
|
||||
"Use CSS Selectors to Style Elements"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aecf08806",
|
||||
"Use a CSS Class to Style an Element"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aefe08806",
|
||||
"Style Multiple Elements with a CSS Class"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08806",
|
||||
"Change the Font Size of an Element"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aede08807",
|
||||
"Set the Font Family of an Element"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08807",
|
||||
"Import a Google Font"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08808",
|
||||
"Specify How Fonts Should Degrade"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9acdf08812",
|
||||
"Size Your Images"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9bedf08813",
|
||||
"Add Borders Around Your Elements"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08814",
|
||||
"Add Rounded Corners with border-radius"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08815",
|
||||
"Make Circular Images with a border-radius"
|
||||
],
|
||||
[
|
||||
"bad87fed1348bd9aede07836",
|
||||
"Give a Background Color to a div Element"
|
||||
],
|
||||
[
|
||||
"bad87eee1348bd9aede07836",
|
||||
"Set the id of an Element"
|
||||
],
|
||||
[
|
||||
"bad87dee1348bd9aede07836",
|
||||
"Use an id Attribute to Style an Element"
|
||||
],
|
||||
[
|
||||
"bad88fee1348bd9aedf08825",
|
||||
"Adjust the Padding of an Element"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08822",
|
||||
"Adjust the Margin of an Element"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08823",
|
||||
"Add a Negative Margin to an Element"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08824",
|
||||
"Add Different Padding to Each Side of an Element"
|
||||
],
|
||||
[
|
||||
"bad87fee1248bd9aedf08824",
|
||||
"Add Different Margins to Each Side of an Element"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08826",
|
||||
"Use Clockwise Notation to Specify the Padding of an Element"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9afdf08726",
|
||||
"Use Clockwise Notation to Specify the Margin of an Element"
|
||||
],
|
||||
[
|
||||
"58c383d33e2e3259241f3076",
|
||||
"Use Attribute Selectors to Style Elements"
|
||||
],
|
||||
[
|
||||
"bad82fee1322bd9aedf08721",
|
||||
"Understand Absolute versus Relative Units"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08736",
|
||||
"Style the HTML Body Element"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08746",
|
||||
"Inherit Styles from the Body Element"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08756",
|
||||
"Prioritize One Style Over Another"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf04756",
|
||||
"Override Styles in Subsequent CSS"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd8aedf06756",
|
||||
"Override Class Declarations by Styling ID Attributes"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf06756",
|
||||
"Override Class Declarations with Inline Styles"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf07756",
|
||||
"Override All Other Styles by using Important"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08726",
|
||||
"Use Hex Code for Specific Colors"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08721",
|
||||
"Use Hex Code to Mix Colors"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08719",
|
||||
"Use Abbreviated Hex Code"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aede08718",
|
||||
"Use RGB values to Color Elements"
|
||||
],
|
||||
[
|
||||
"bad82fee1348bd9aedf08721",
|
||||
"Use RGB to Mix Colors"
|
||||
],
|
||||
[
|
||||
"5a9d725e424fe3d0e10cad10",
|
||||
"Use CSS Variables to change several elements at once"
|
||||
],
|
||||
[
|
||||
"5a9d726c424fe3d0e10cad11",
|
||||
"Create a custom CSS Variable"
|
||||
],
|
||||
[
|
||||
"5a9d727a424fe3d0e10cad12",
|
||||
"Use a custom CSS Variable"
|
||||
],
|
||||
[
|
||||
"5a9d7286424fe3d0e10cad13",
|
||||
"Attach a Fallback value to a CSS Variable"
|
||||
],
|
||||
[
|
||||
"5b7d72c338cd7e35b63f3e14",
|
||||
"Improve Compatibility with Browser Fallbacks"
|
||||
],
|
||||
[
|
||||
"5a9d7295424fe3d0e10cad14",
|
||||
"Cascading CSS variables"
|
||||
],
|
||||
[
|
||||
"5a9d72a1424fe3d0e10cad15",
|
||||
"Change a variable for a specific area"
|
||||
],
|
||||
[
|
||||
"5a9d72ad424fe3d0e10cad16",
|
||||
"Use a media query to change a variable"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "01-responsive-web-design/basic-css.json"
|
||||
}
|
94
curriculum/challenges/_meta/basic-data-structures/meta.json
Normal file
94
curriculum/challenges/_meta/basic-data-structures/meta.json
Normal file
@ -0,0 +1,94 @@
|
||||
{
|
||||
"name": "Basic Data Structures",
|
||||
"dashedName": "basic-data-structures",
|
||||
"order": 5,
|
||||
"time": "1 hour",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "javascript-algorithms-and-data-structures",
|
||||
"superOrder": 2,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d7b7e367417b2b2512b20",
|
||||
"Use an Array to Store a Collection of Data"
|
||||
],
|
||||
[
|
||||
"5a661e0f1068aca922b3ef17",
|
||||
"Access an Array's Contents Using Bracket Notation"
|
||||
],
|
||||
[
|
||||
"587d78b2367417b2b2512b0e",
|
||||
"Add Items to an Array with push() and unshift()"
|
||||
],
|
||||
[
|
||||
"587d78b2367417b2b2512b0f",
|
||||
"Remove Items from an Array with pop() and shift()"
|
||||
],
|
||||
[
|
||||
"587d78b2367417b2b2512b10",
|
||||
"Remove Items Using splice()"
|
||||
],
|
||||
[
|
||||
"587d78b3367417b2b2512b11",
|
||||
"Add Items Using splice()"
|
||||
],
|
||||
[
|
||||
"587d7b7a367417b2b2512b12",
|
||||
"Copy Array Items Using slice()"
|
||||
],
|
||||
[
|
||||
"587d7b7b367417b2b2512b13",
|
||||
"Copy an Array with the Spread Operator"
|
||||
],
|
||||
[
|
||||
"587d7b7b367417b2b2512b17",
|
||||
"Combine Arrays with the Spread Operator"
|
||||
],
|
||||
[
|
||||
"587d7b7b367417b2b2512b14",
|
||||
"Check For The Presence of an Element With indexOf()"
|
||||
],
|
||||
[
|
||||
"587d7b7b367417b2b2512b15",
|
||||
"Iterate Through All an Array's Items Using For Loops"
|
||||
],
|
||||
[
|
||||
"587d7b7b367417b2b2512b16",
|
||||
"Create complex multi-dimensional arrays"
|
||||
],
|
||||
[
|
||||
"587d7b7c367417b2b2512b18",
|
||||
"Add Key-Value Pairs to JavaScript Objects"
|
||||
],
|
||||
[
|
||||
"587d7b7c367417b2b2512b19",
|
||||
"Modify an Object Nested Within an Object"
|
||||
],
|
||||
[
|
||||
"587d7b7c367417b2b2512b1a",
|
||||
"Access Property Names with Bracket Notation"
|
||||
],
|
||||
[
|
||||
"587d7b7c367417b2b2512b1b",
|
||||
"Use the delete Keyword to Remove Object Properties"
|
||||
],
|
||||
[
|
||||
"587d7b7d367417b2b2512b1c",
|
||||
"Check if an Object has a Property"
|
||||
],
|
||||
[
|
||||
"587d7b7d367417b2b2512b1d",
|
||||
" Iterate Through the Keys of an Object with a for...in Statement"
|
||||
],
|
||||
[
|
||||
"587d7b7d367417b2b2512b1e",
|
||||
"Generate an Array of All Object Keys with Object.keys()"
|
||||
],
|
||||
[
|
||||
"587d7b7d367417b2b2512b1f",
|
||||
"Modify an Array Stored in an Object"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "02-javascript-algorithms-and-data-structures/basic-data-structures.json"
|
||||
}
|
122
curriculum/challenges/_meta/basic-html-and-html5/meta.json
Normal file
122
curriculum/challenges/_meta/basic-html-and-html5/meta.json
Normal file
@ -0,0 +1,122 @@
|
||||
{
|
||||
"name": "Basic HTML and HTML5",
|
||||
"dashedName": "basic-html-and-html5",
|
||||
"order": 0,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "responsive-web-design",
|
||||
"superOrder": 1,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"bd7123c8c441eddfaeb5bdef",
|
||||
"Say Hello to HTML Elements"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf0887a",
|
||||
"Headline with the h2 Element"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08801",
|
||||
"Inform with the Paragraph Element"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08833",
|
||||
"Fill in the Blank with Placeholder Text"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08802",
|
||||
"Uncomment HTML"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08804",
|
||||
"Comment out HTML"
|
||||
],
|
||||
[
|
||||
"bad87fed1348bd9aedf08833",
|
||||
"Delete HTML Elements"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aecf08801",
|
||||
"Introduction to HTML5 Elements"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08812",
|
||||
"Add Images to Your Website"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08816",
|
||||
"Link to External Pages with Anchor Elements"
|
||||
],
|
||||
[
|
||||
"bad88fee1348bd9aedf08816",
|
||||
"Link to Internal Sections of a Page with Anchor Elements"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aede08817",
|
||||
"Nest an Anchor Element within a Paragraph"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08817",
|
||||
"Make Dead Links Using the Hash Symbol"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08820",
|
||||
"Turn an Image into a Link"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08827",
|
||||
"Create a Bulleted Unordered List"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08828",
|
||||
"Create an Ordered List"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08829",
|
||||
"Create a Text Field"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08830",
|
||||
"Add Placeholder Text to a Text Field"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aede08830",
|
||||
"Create a Form Element"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedd08830",
|
||||
"Add a Submit Button to a Form"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedc08830",
|
||||
"Use HTML5 to Require a Field"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08834",
|
||||
"Create a Set of Radio Buttons"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08835",
|
||||
"Create a Set of Checkboxes"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedd08835",
|
||||
"Check Radio Buttons and Checkboxes by Default"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aede08835",
|
||||
"Nest Many Elements within a Single div Element"
|
||||
],
|
||||
[
|
||||
"587d78aa367417b2b2512aed",
|
||||
"Declare the Doctype of an HTML Document"
|
||||
],
|
||||
[
|
||||
"587d78aa367417b2b2512aec",
|
||||
"Define the Head and Body of an HTML Document"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "01-responsive-web-design/basic-html-and-html5.json"
|
||||
}
|
442
curriculum/challenges/_meta/basic-javascript/meta.json
Normal file
442
curriculum/challenges/_meta/basic-javascript/meta.json
Normal file
@ -0,0 +1,442 @@
|
||||
{
|
||||
"name": "Basic JavaScript",
|
||||
"dashedName": "basic-javascript",
|
||||
"order": 1,
|
||||
"time": "10 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "javascript-algorithms-and-data-structures",
|
||||
"superOrder": 2,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"bd7123c9c441eddfaeb4bdef",
|
||||
"Comment Your JavaScript Code"
|
||||
],
|
||||
[
|
||||
"bd7123c9c443eddfaeb5bdef",
|
||||
"Declare JavaScript Variables"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244a8",
|
||||
"Storing Values with the Assignment Operator"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244a9",
|
||||
"Initializing Variables with the Assignment Operator"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244aa",
|
||||
"Understanding Uninitialized Variables"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244ab",
|
||||
"Understanding Case Sensitivity in Variables"
|
||||
],
|
||||
[
|
||||
"cf1111c1c11feddfaeb3bdef",
|
||||
"Add Two Numbers with JavaScript"
|
||||
],
|
||||
[
|
||||
"cf1111c1c11feddfaeb4bdef",
|
||||
"Subtract One Number from Another with JavaScript"
|
||||
],
|
||||
[
|
||||
"cf1231c1c11feddfaeb5bdef",
|
||||
"Multiply Two Numbers with JavaScript"
|
||||
],
|
||||
[
|
||||
"cf1111c1c11feddfaeb6bdef",
|
||||
"Divide One Number by Another with JavaScript"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244ac",
|
||||
"Increment a Number with JavaScript"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244ad",
|
||||
"Decrement a Number with JavaScript"
|
||||
],
|
||||
[
|
||||
"cf1391c1c11feddfaeb4bdef",
|
||||
"Create Decimal Numbers with JavaScript"
|
||||
],
|
||||
[
|
||||
"bd7993c9c69feddfaeb7bdef",
|
||||
"Multiply Two Decimals with JavaScript"
|
||||
],
|
||||
[
|
||||
"bd7993c9ca9feddfaeb7bdef",
|
||||
"Divide One Decimal by Another with JavaScript"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244ae",
|
||||
"Finding a Remainder in JavaScript"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244af",
|
||||
"Compound Assignment With Augmented Addition"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244b0",
|
||||
"Compound Assignment With Augmented Subtraction"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244b1",
|
||||
"Compound Assignment With Augmented Multiplication"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244b2",
|
||||
"Compound Assignment With Augmented Division"
|
||||
],
|
||||
[
|
||||
"bd7123c9c444eddfaeb5bdef",
|
||||
"Declare String Variables"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244b5",
|
||||
"Escaping Literal Quotes in Strings"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244b4",
|
||||
"Quoting Strings with Single Quotes"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244b6",
|
||||
"Escape Sequences in Strings"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244b7",
|
||||
"Concatenating Strings with Plus Operator"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244b8",
|
||||
"Concatenating Strings with the Plus Equals Operator"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244b9",
|
||||
"Constructing Strings with Variables"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244ed",
|
||||
"Appending Variables to Strings"
|
||||
],
|
||||
[
|
||||
"bd7123c9c448eddfaeb5bdef",
|
||||
"Find the Length of a String"
|
||||
],
|
||||
[
|
||||
"bd7123c9c549eddfaeb5bdef",
|
||||
"Use Bracket Notation to Find the First Character in a String"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244ba",
|
||||
"Understand String Immutability"
|
||||
],
|
||||
[
|
||||
"bd7123c9c450eddfaeb5bdef",
|
||||
"Use Bracket Notation to Find the Nth Character in a String"
|
||||
],
|
||||
[
|
||||
"bd7123c9c451eddfaeb5bdef",
|
||||
"Use Bracket Notation to Find the Last Character in a String"
|
||||
],
|
||||
[
|
||||
"bd7123c9c452eddfaeb5bdef",
|
||||
"Use Bracket Notation to Find the Nth-to-Last Character in a String"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244bb",
|
||||
"Word Blanks"
|
||||
],
|
||||
[
|
||||
"bd7993c9c69feddfaeb8bdef",
|
||||
"Store Multiple Values in one Variable using JavaScript Arrays"
|
||||
],
|
||||
[
|
||||
"cf1111c1c11feddfaeb7bdef",
|
||||
"Nest one Array within Another Array"
|
||||
],
|
||||
[
|
||||
"56bbb991ad1ed5201cd392ca",
|
||||
"Access Array Data with Indexes"
|
||||
],
|
||||
[
|
||||
"cf1111c1c11feddfaeb8bdef",
|
||||
"Modify Array Data With Indexes"
|
||||
],
|
||||
[
|
||||
"56592a60ddddeae28f7aa8e1",
|
||||
"Access Multi-Dimensional Arrays With Indexes"
|
||||
],
|
||||
[
|
||||
"56bbb991ad1ed5201cd392cb",
|
||||
"Manipulate Arrays With push()"
|
||||
],
|
||||
[
|
||||
"56bbb991ad1ed5201cd392cc",
|
||||
"Manipulate Arrays With pop()"
|
||||
],
|
||||
[
|
||||
"56bbb991ad1ed5201cd392cd",
|
||||
"Manipulate Arrays With shift()"
|
||||
],
|
||||
[
|
||||
"56bbb991ad1ed5201cd392ce",
|
||||
"Manipulate Arrays With unshift()"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244bc",
|
||||
"Shopping List"
|
||||
],
|
||||
[
|
||||
"56bbb991ad1ed5201cd392cf",
|
||||
"Write Reusable JavaScript with Functions"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244bd",
|
||||
"Passing Values to Functions with Arguments"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244be",
|
||||
"Global Scope and Functions"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244bf",
|
||||
"Local Scope and Functions"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244c0",
|
||||
"Global vs. Local Scope in Functions"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244c2",
|
||||
"Return a Value from a Function with Return"
|
||||
],
|
||||
[
|
||||
"598e8944f009e646fc236146",
|
||||
"Understanding Undefined Value returned from a Function"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244c3",
|
||||
"Assignment with a Returned Value"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244c6",
|
||||
"Stand in Line"
|
||||
],
|
||||
[
|
||||
"bd7123c9c441eddfaeb5bdef",
|
||||
"Understanding Boolean Values"
|
||||
],
|
||||
[
|
||||
"cf1111c1c12feddfaeb3bdef",
|
||||
"Use Conditional Logic with If Statements"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244d0",
|
||||
"Comparison with the Equality Operator"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244d1",
|
||||
"Comparison with the Strict Equality Operator"
|
||||
],
|
||||
[
|
||||
"599a789b454f2bbd91a3ff4d",
|
||||
"Practice comparing different values"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244d2",
|
||||
"Comparison with the Inequality Operator"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244d3",
|
||||
"Comparison with the Strict Inequality Operator"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244d4",
|
||||
"Comparison with the Greater Than Operator"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244d5",
|
||||
"Comparison with the Greater Than Or Equal To Operator"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244d6",
|
||||
"Comparison with the Less Than Operator"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244d7",
|
||||
"Comparison with the Less Than Or Equal To Operator"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244d8",
|
||||
"Comparisons with the Logical And Operator"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244d9",
|
||||
"Comparisons with the Logical Or Operator"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244da",
|
||||
"Introducing Else Statements"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244db",
|
||||
"Introducing Else If Statements"
|
||||
],
|
||||
[
|
||||
"5690307fddb111c6084545d7",
|
||||
"Logical Order in If Else Statements"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244dc",
|
||||
"Chaining If Else Statements"
|
||||
],
|
||||
[
|
||||
"5664820f61c48e80c9fa476c",
|
||||
"Golf Code"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244dd",
|
||||
"Selecting from Many Options with Switch Statements"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244de",
|
||||
"Adding a Default Option in Switch Statements"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244df",
|
||||
"Multiple Identical Options in Switch Statements"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244e0",
|
||||
"Replacing If Else Chains with Switch"
|
||||
],
|
||||
[
|
||||
"5679ceb97cbaa8c51670a16b",
|
||||
"Returning Boolean Values from Functions"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244c4",
|
||||
"Return Early Pattern for Functions"
|
||||
],
|
||||
[
|
||||
"565bbe00e9cc8ac0725390f4",
|
||||
"Counting Cards"
|
||||
],
|
||||
[
|
||||
"56bbb991ad1ed5201cd392d0",
|
||||
"Build JavaScript Objects"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244c7",
|
||||
"Accessing Object Properties with Dot Notation"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244c8",
|
||||
"Accessing Object Properties with Bracket Notation"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244c9",
|
||||
"Accessing Object Properties with Variables"
|
||||
],
|
||||
[
|
||||
"56bbb991ad1ed5201cd392d1",
|
||||
"Updating Object Properties"
|
||||
],
|
||||
[
|
||||
"56bbb991ad1ed5201cd392d2",
|
||||
"Add New Properties to a JavaScript Object"
|
||||
],
|
||||
[
|
||||
"56bbb991ad1ed5201cd392d3",
|
||||
"Delete Properties from a JavaScript Object"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244ca",
|
||||
"Using Objects for Lookups"
|
||||
],
|
||||
[
|
||||
"567af2437cbaa8c51670a16c",
|
||||
"Testing Objects for Properties"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244cb",
|
||||
"Manipulating Complex Objects"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244cc",
|
||||
"Accessing Nested Objects"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244cd",
|
||||
"Accessing Nested Arrays"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244cf",
|
||||
"Record Collection"
|
||||
],
|
||||
[
|
||||
"cf1111c1c11feddfaeb1bdef",
|
||||
"Iterate with JavaScript While Loops"
|
||||
],
|
||||
[
|
||||
"cf1111c1c11feddfaeb5bdef",
|
||||
"Iterate with JavaScript For Loops"
|
||||
],
|
||||
[
|
||||
"56104e9e514f539506016a5c",
|
||||
"Iterate Odd Numbers With a For Loop"
|
||||
],
|
||||
[
|
||||
"56105e7b514f539506016a5e",
|
||||
"Count Backwards With a For Loop"
|
||||
],
|
||||
[
|
||||
"5675e877dbd60be8ad28edc6",
|
||||
"Iterate Through an Array with a For Loop"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244e1",
|
||||
"Nesting For Loops"
|
||||
],
|
||||
[
|
||||
"5a2efd662fb457916e1fe604",
|
||||
"Iterate with JavaScript Do...While Loops"
|
||||
],
|
||||
[
|
||||
"5688e62ea601b2482ff8422b",
|
||||
"Profile Lookup"
|
||||
],
|
||||
[
|
||||
"cf1111c1c11feddfaeb9bdef",
|
||||
"Generate Random Fractions with JavaScript"
|
||||
],
|
||||
[
|
||||
"cf1111c1c12feddfaeb1bdef",
|
||||
"Generate Random Whole Numbers with JavaScript"
|
||||
],
|
||||
[
|
||||
"cf1111c1c12feddfaeb2bdef",
|
||||
"Generate Random Whole Numbers within a Range"
|
||||
],
|
||||
[
|
||||
"587d7b7e367417b2b2512b23",
|
||||
"Use the parseInt Function"
|
||||
],
|
||||
[
|
||||
"587d7b7e367417b2b2512b22",
|
||||
"Use the parseInt Function with a Radix"
|
||||
],
|
||||
[
|
||||
"587d7b7e367417b2b2512b24",
|
||||
"Use the Conditional (Ternary) Operator"
|
||||
],
|
||||
[
|
||||
"587d7b7e367417b2b2512b21",
|
||||
"Use Multiple Conditional (Ternary) Operators"
|
||||
]
|
||||
],
|
||||
"helpRoom": "HelpJavaScript",
|
||||
"fileName": "02-javascript-algorithms-and-data-structures/basic-javascript.json"
|
||||
}
|
142
curriculum/challenges/_meta/bootstrap/meta.json
Normal file
142
curriculum/challenges/_meta/bootstrap/meta.json
Normal file
@ -0,0 +1,142 @@
|
||||
{
|
||||
"name": "Bootstrap",
|
||||
"dashedName": "bootstrap",
|
||||
"order": 2,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [
|
||||
{
|
||||
"link": "https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.css"
|
||||
}
|
||||
],
|
||||
"superBlock": "front-end-libraries",
|
||||
"superOrder": 3,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"bad87fee1348bd9acde08712",
|
||||
"Use Responsive Design with Bootstrap Fluid Containers"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9acde08812",
|
||||
"Make Images Mobile Responsive"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd8acde08812",
|
||||
"Center Text with Bootstrap"
|
||||
],
|
||||
[
|
||||
"bad87fee1348cd8acdf08812",
|
||||
"Create a Bootstrap Button"
|
||||
],
|
||||
[
|
||||
"bad87fee1348cd8acef08812",
|
||||
"Create a Block Element Bootstrap Button"
|
||||
],
|
||||
[
|
||||
"bad87fee1348cd8acef08811",
|
||||
"Taste the Bootstrap Button Color Rainbow"
|
||||
],
|
||||
[
|
||||
"bad87fee1348cd8acef08813",
|
||||
"Call out Optional Actions with btn-info"
|
||||
],
|
||||
[
|
||||
"bad87fee1348ce8acef08814",
|
||||
"Warn Your Users of a Dangerous Action with btn-danger"
|
||||
],
|
||||
[
|
||||
"bad88fee1348ce8acef08815",
|
||||
"Use the Bootstrap Grid to Put Elements Side By Side"
|
||||
],
|
||||
[
|
||||
"bad87fee1347bd9aedf08845",
|
||||
"Ditch Custom CSS for Bootstrap"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedf08845",
|
||||
"Use a span to Target Inline Elements"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aede08845",
|
||||
"Create a Custom Heading"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedd08845",
|
||||
"Add Font Awesome Icons to our Buttons"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedc08845",
|
||||
"Add Font Awesome Icons to all of our Buttons"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedb08845",
|
||||
"Responsively Style Radio Buttons"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aeda08845",
|
||||
"Responsively Style Checkboxes"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aed908845",
|
||||
"Style Text Inputs as Form Controls"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aec908845",
|
||||
"Line up Form Elements Responsively with Bootstrap"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aec908846",
|
||||
"Create a Bootstrap Headline"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aec908746",
|
||||
"House our page within a Bootstrap container-fluid div"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9bec908846",
|
||||
"Create a Bootstrap Row"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aec908847",
|
||||
"Split Your Bootstrap Row"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aec908848",
|
||||
"Create Bootstrap Wells"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aec908849",
|
||||
"Add Elements within Your Bootstrap Wells"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aec908850",
|
||||
"Apply the Default Bootstrap Button Style"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aec908852",
|
||||
"Create a Class to Target with jQuery Selectors"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aec908853",
|
||||
"Add id Attributes to Bootstrap Elements"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aec908854",
|
||||
"Label Bootstrap Wells"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aec908855",
|
||||
"Give Each Element a Unique id"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aec908856",
|
||||
"Label Bootstrap Buttons"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aec908857",
|
||||
"Use Comments to Clarify Code"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "03-front-end-libraries/bootstrap.json"
|
||||
}
|
82
curriculum/challenges/_meta/css-flexbox/meta.json
Normal file
82
curriculum/challenges/_meta/css-flexbox/meta.json
Normal file
@ -0,0 +1,82 @@
|
||||
{
|
||||
"name": "CSS Flexbox",
|
||||
"dashedName": "css-flexbox",
|
||||
"order": 5,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "responsive-web-design",
|
||||
"superOrder": 1,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d78ab367417b2b2512af0",
|
||||
"Use display: flex to Position Two Boxes"
|
||||
],
|
||||
[
|
||||
"587d78ab367417b2b2512af1",
|
||||
"Add Flex Superpowers to the Tweet Embed"
|
||||
],
|
||||
[
|
||||
"587d78ab367417b2b2512af2",
|
||||
"Use the flex-direction Property to Make a Row"
|
||||
],
|
||||
[
|
||||
"587d78ab367417b2b2512af3",
|
||||
"Apply the flex-direction Property to Create Rows in the Tweet Embed"
|
||||
],
|
||||
[
|
||||
"587d78ac367417b2b2512af4",
|
||||
"Use the flex-direction Property to Make a Column"
|
||||
],
|
||||
[
|
||||
"587d78ac367417b2b2512af5",
|
||||
"Apply the flex-direction Property to Create a Column in the Tweet Embed"
|
||||
],
|
||||
[
|
||||
"587d78ac367417b2b2512af6",
|
||||
"Align Elements Using the justify-content Property"
|
||||
],
|
||||
[
|
||||
"587d78ac367417b2b2512af7",
|
||||
"Use the justify-content Property in the Tweet Embed"
|
||||
],
|
||||
[
|
||||
"587d78ad367417b2b2512af8",
|
||||
"Align Elements Using the align-items Property"
|
||||
],
|
||||
[
|
||||
"587d78ad367417b2b2512af9",
|
||||
"Use the align-items Property in the Tweet Embed"
|
||||
],
|
||||
[
|
||||
"587d78ad367417b2b2512afa",
|
||||
"Use the flex-wrap Property to Wrap a Row or Column"
|
||||
],
|
||||
[
|
||||
"587d78ad367417b2b2512afb",
|
||||
"Use the flex-shrink Property to Shrink Items"
|
||||
],
|
||||
[
|
||||
"587d78ae367417b2b2512afc",
|
||||
"Use the flex-grow Property to Expand Items"
|
||||
],
|
||||
[
|
||||
"587d78ae367417b2b2512afd",
|
||||
"Use the flex-basis Property to Set the Initial Size of an Item"
|
||||
],
|
||||
[
|
||||
"587d78ae367417b2b2512afe",
|
||||
"Use the flex Shorthand Property"
|
||||
],
|
||||
[
|
||||
"587d78ae367417b2b2512aff",
|
||||
"Use the order Property to Rearrange Items"
|
||||
],
|
||||
[
|
||||
"587d78af367417b2b2512b00",
|
||||
"Use the align-self Property"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "01-responsive-web-design/css-flexbox.json"
|
||||
}
|
102
curriculum/challenges/_meta/css-grid/meta.json
Normal file
102
curriculum/challenges/_meta/css-grid/meta.json
Normal file
@ -0,0 +1,102 @@
|
||||
{
|
||||
"name": "CSS Grid",
|
||||
"dashedName": "css-grid",
|
||||
"order": 6,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "responsive-web-design",
|
||||
"superOrder": 1,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"5a858944d96184f06fd60d61",
|
||||
"Create Your First CSS Grid"
|
||||
],
|
||||
[
|
||||
"5a9036d038fddaf9a66b5d32",
|
||||
"Add Columns with grid-template-columns"
|
||||
],
|
||||
[
|
||||
"5a9036e138fddaf9a66b5d33",
|
||||
"Add Rows with grid-template-rows"
|
||||
],
|
||||
[
|
||||
"5a9036ee38fddaf9a66b5d34",
|
||||
"Use CSS Grid units to Change the Size of Columns and Rows"
|
||||
],
|
||||
[
|
||||
"5a9036ee38fddaf9a66b5d35",
|
||||
"Create a Column Gap Using grid-column-gap"
|
||||
],
|
||||
[
|
||||
"5a9036ee38fddaf9a66b5d36",
|
||||
"Create a Row Gap using grid-row-gap"
|
||||
],
|
||||
[
|
||||
"5a9036ee38fddaf9a66b5d37",
|
||||
"Add Gaps Faster with grid-gap"
|
||||
],
|
||||
[
|
||||
"5a90372638fddaf9a66b5d38",
|
||||
"Use grid-column to Control Spacing"
|
||||
],
|
||||
[
|
||||
"5a90373638fddaf9a66b5d39",
|
||||
"Use grid-row to Control Spacing"
|
||||
],
|
||||
[
|
||||
"5a90374338fddaf9a66b5d3a",
|
||||
"Align an Item Horizontally using justify-self"
|
||||
],
|
||||
[
|
||||
"5a90375238fddaf9a66b5d3b",
|
||||
"Align an Item Vertically using align-self"
|
||||
],
|
||||
[
|
||||
"5a90376038fddaf9a66b5d3c",
|
||||
"Align All Items Horizontally using justify-items"
|
||||
],
|
||||
[
|
||||
"5a94fdf869fb03452672e45b",
|
||||
"Align All Items Vertically using align-items"
|
||||
],
|
||||
[
|
||||
"5a94fe0569fb03452672e45c",
|
||||
"Divide the Grid Into an Area Template"
|
||||
],
|
||||
[
|
||||
"5a94fe1369fb03452672e45d",
|
||||
"Place Items in Grid Areas Using the grid-area Property"
|
||||
],
|
||||
[
|
||||
"5a94fe2669fb03452672e45e",
|
||||
"Use grid-area Without Creating an Areas Template"
|
||||
],
|
||||
[
|
||||
"5a94fe3669fb03452672e45f",
|
||||
"Reduce Repetition Using the repeat Function"
|
||||
],
|
||||
[
|
||||
"5a94fe4469fb03452672e460",
|
||||
"Limit Item Size Using the minmax Function"
|
||||
],
|
||||
[
|
||||
"5a94fe5469fb03452672e461",
|
||||
"Create Flexible Layouts Using auto-fill"
|
||||
],
|
||||
[
|
||||
"5a94fe6269fb03452672e462",
|
||||
"Create Flexible Layouts Using auto-fit"
|
||||
],
|
||||
[
|
||||
"5a94fe7769fb03452672e463",
|
||||
"Use Media Queries to Create Responsive Layouts"
|
||||
],
|
||||
[
|
||||
"5a94fe8569fb03452672e464",
|
||||
"Create Grids within Grids"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "01-responsive-web-design/css-grid.json"
|
||||
}
|
202
curriculum/challenges/_meta/data-structures/meta.json
Normal file
202
curriculum/challenges/_meta/data-structures/meta.json
Normal file
@ -0,0 +1,202 @@
|
||||
{
|
||||
"name": "Data Structures",
|
||||
"dashedName": "data-structures",
|
||||
"order": 2,
|
||||
"time": "",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "coding-interview-prep",
|
||||
"superOrder": 8,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d8253367417b2b2512c6a",
|
||||
"Typed Arrays"
|
||||
],
|
||||
[
|
||||
"587d8250367417b2b2512c5e",
|
||||
"Learn how a Stack Works"
|
||||
],
|
||||
[
|
||||
"587d8250367417b2b2512c5f",
|
||||
"Create a Stack Class"
|
||||
],
|
||||
[
|
||||
"587d8250367417b2b2512c60",
|
||||
"Create a Queue Class"
|
||||
],
|
||||
[
|
||||
"587d8255367417b2b2512c74",
|
||||
"Create a Priority Queue Class"
|
||||
],
|
||||
[
|
||||
"587d8255367417b2b2512c75",
|
||||
"Create a Circular Queue"
|
||||
],
|
||||
[
|
||||
"8d1323c8c441eddfaeb5bdef",
|
||||
"Create a Set Class"
|
||||
],
|
||||
[
|
||||
"587d8253367417b2b2512c6b",
|
||||
"Remove from a Set"
|
||||
],
|
||||
[
|
||||
"8d1923c8c441eddfaeb5bdef",
|
||||
"Size of the Set"
|
||||
],
|
||||
[
|
||||
"587d8253367417b2b2512c6c",
|
||||
"Perform a Union on Two Sets"
|
||||
],
|
||||
[
|
||||
"587d8253367417b2b2512c6d",
|
||||
"Perform an Intersection on Two Sets of Data"
|
||||
],
|
||||
[
|
||||
"587d8254367417b2b2512c6e",
|
||||
"Perform a Difference on Two Sets of Data"
|
||||
],
|
||||
[
|
||||
"587d8254367417b2b2512c6f",
|
||||
"Perform a Subset Check on Two Sets of Data"
|
||||
],
|
||||
[
|
||||
"587d8254367417b2b2512c70",
|
||||
"Create and Add to Sets in ES6"
|
||||
],
|
||||
[
|
||||
"587d8254367417b2b2512c71",
|
||||
"Remove items from a set in ES6"
|
||||
],
|
||||
[
|
||||
"587d8255367417b2b2512c72",
|
||||
"Use .has and .size on an ES6 Set"
|
||||
],
|
||||
[
|
||||
"587d8255367417b2b2512c73",
|
||||
"Use Spread and Notes for ES5 Set() Integration"
|
||||
],
|
||||
[
|
||||
"8d5823c8c441eddfaeb5bdef",
|
||||
"Create a Map Data Structure"
|
||||
],
|
||||
[
|
||||
"587d825b367417b2b2512c8d",
|
||||
"Create an ES6 JavaScript Map"
|
||||
],
|
||||
[
|
||||
"587d825b367417b2b2512c8e",
|
||||
"Create a Hash Table"
|
||||
],
|
||||
[
|
||||
"587d8251367417b2b2512c61",
|
||||
"Work with Nodes in a Linked List"
|
||||
],
|
||||
[
|
||||
"587d8251367417b2b2512c62",
|
||||
"Create a Linked List Class"
|
||||
],
|
||||
[
|
||||
"587d8251367417b2b2512c63",
|
||||
"Remove Elements from a Linked List"
|
||||
],
|
||||
[
|
||||
"587d8251367417b2b2512c64",
|
||||
"Search within a Linked List"
|
||||
],
|
||||
[
|
||||
"587d8251367417b2b2512c65",
|
||||
"Remove Elements from a Linked List by Index"
|
||||
],
|
||||
[
|
||||
"587d8252367417b2b2512c67",
|
||||
"Add Elements at a Specific Index in a Linked List"
|
||||
],
|
||||
[
|
||||
"587d825a367417b2b2512c87",
|
||||
"Create a Doubly Linked List"
|
||||
],
|
||||
[
|
||||
"587d825a367417b2b2512c88",
|
||||
"Reverse a Doubly Linked List"
|
||||
],
|
||||
[
|
||||
"587d8256367417b2b2512c7a",
|
||||
"Find the Minimum and Maximum Value in a Binary Search Tree"
|
||||
],
|
||||
[
|
||||
"587d8257367417b2b2512c7b",
|
||||
"Add a New Element to a Binary Search Tree"
|
||||
],
|
||||
[
|
||||
"587d8257367417b2b2512c7c",
|
||||
"Check if an Element is Present in a Binary Search Tree"
|
||||
],
|
||||
[
|
||||
"587d8257367417b2b2512c7d",
|
||||
"Find the Minimum and Maximum Height of a Binary Search Tree"
|
||||
],
|
||||
[
|
||||
"587d8257367417b2b2512c7e",
|
||||
"Use Depth First Search in a Binary Search Tree"
|
||||
],
|
||||
[
|
||||
"587d8258367417b2b2512c7f",
|
||||
"Use Breadth First Search in a Binary Search Tree"
|
||||
],
|
||||
[
|
||||
"587d8258367417b2b2512c80",
|
||||
"Delete a Leaf Node in a Binary Search Tree"
|
||||
],
|
||||
[
|
||||
"587d8258367417b2b2512c81",
|
||||
"Delete a Node with One Child in a Binary Search Tree"
|
||||
],
|
||||
[
|
||||
"587d8258367417b2b2512c82",
|
||||
"Delete a Node with Two Children in a Binary Search Tree"
|
||||
],
|
||||
[
|
||||
"587d8259367417b2b2512c83",
|
||||
"Invert a Binary Tree"
|
||||
],
|
||||
[
|
||||
"587d8259367417b2b2512c84",
|
||||
"Create a Trie Search Tree"
|
||||
],
|
||||
[
|
||||
"587d825a367417b2b2512c8a",
|
||||
"Insert an Element into a Max Heap"
|
||||
],
|
||||
[
|
||||
"587d825b367417b2b2512c8b",
|
||||
"Remove an Element from a Max Heap"
|
||||
],
|
||||
[
|
||||
"587d825b367417b2b2512c8c",
|
||||
"Implement Heap Sort with a Min Heap"
|
||||
],
|
||||
[
|
||||
"587d8256367417b2b2512c77",
|
||||
"Adjacency List"
|
||||
],
|
||||
[
|
||||
"587d8256367417b2b2512c78",
|
||||
"Adjacency Matrix"
|
||||
],
|
||||
[
|
||||
"587d8256367417b2b2512c79",
|
||||
"Incidence Matrix"
|
||||
],
|
||||
[
|
||||
"587d825c367417b2b2512c90",
|
||||
"Breadth-First Search"
|
||||
],
|
||||
[
|
||||
"587d825d367417b2b2512c96",
|
||||
"Depth-First Search"
|
||||
]
|
||||
],
|
||||
"helpRoom": "HelpJavaScript",
|
||||
"fileName": "08-coding-interview-prep/data-structures.json"
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
{
|
||||
"name": "Data Visualization Certificate",
|
||||
"dashedName": "data-visualization-certificate",
|
||||
"order": 4,
|
||||
"time": "",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "certificates",
|
||||
"superOrder": 9,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"5a553ca864b52e1d8bceea14",
|
||||
"Data Visualization Certificate"
|
||||
]
|
||||
],
|
||||
"isPrivate": true,
|
||||
"fileName": "09-certificates/data-visualization-certificate.json"
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
{
|
||||
"name": "Data Visualization Projects",
|
||||
"dashedName": "data-visualization-projects",
|
||||
"order": 3,
|
||||
"time": "150 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "data-visualization",
|
||||
"superOrder": 4,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"bd7168d8c242eddfaeb5bd13",
|
||||
"Visualize Data with a Bar Chart"
|
||||
],
|
||||
[
|
||||
"bd7178d8c242eddfaeb5bd13",
|
||||
"Visualize Data with a Scatterplot Graph"
|
||||
],
|
||||
[
|
||||
"bd7188d8c242eddfaeb5bd13",
|
||||
"Visualize Data with a Heat Map"
|
||||
],
|
||||
[
|
||||
"587d7fa6367417b2b2512bbf",
|
||||
"Visualize Data with a Choropleth Map"
|
||||
],
|
||||
[
|
||||
"587d7fa6367417b2b2512bc0",
|
||||
"Visualize Data with a Treemap Diagram"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "04-data-visualization/data-visualization-projects.json"
|
||||
}
|
@ -0,0 +1,49 @@
|
||||
{
|
||||
"name": "Data Visualization with D3",
|
||||
"dashedName": "data-visualization-with-d3",
|
||||
"order": 1,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "data-visualization",
|
||||
"superOrder": 4,
|
||||
"challengeOrder": [
|
||||
["587d7fa6367417b2b2512bc2", "Add Document Elements with D3"],
|
||||
["587d7fa6367417b2b2512bc3", "Select a Group of Elements with D3"],
|
||||
["587d7fa7367417b2b2512bc4", "Work with Data in D3"],
|
||||
["587d7fa7367417b2b2512bc5", "Work with Dynamic Data in D3"],
|
||||
["587d7fa7367417b2b2512bc6", "Add Inline Styling to Elements"],
|
||||
["587d7fa7367417b2b2512bc7", "Change Styles Based on Data"],
|
||||
["587d7fa7367417b2b2512bc8", "Add Classes with D3"],
|
||||
["587d7fa8367417b2b2512bc9", "Update the Height of an Element Dynamically"],
|
||||
["587d7fa8367417b2b2512bca", "Change the Presentation of a Bar Chart"],
|
||||
["587d7fa8367417b2b2512bcb", "Learn About SVG in D3"],
|
||||
["587d7fa8367417b2b2512bcc", "Display Shapes with SVG"],
|
||||
["587d7fa8367417b2b2512bcd", "Create a Bar for Each Data Point in the Set"],
|
||||
[
|
||||
"587d7fa9367417b2b2512bce",
|
||||
"Dynamically Set the Coordinates for Each Bar"
|
||||
],
|
||||
["587d7fa9367417b2b2512bcf", "Dynamically Change the Height of Each Bar"],
|
||||
["587d7fa9367417b2b2512bd0", "Invert SVG Elements"],
|
||||
["587d7fa9367417b2b2512bd1", "Change the Color of an SVG Element"],
|
||||
["587d7faa367417b2b2512bd2", "Add Labels to D3 Elements"],
|
||||
["587d7faa367417b2b2512bd3", "Style D3 Labels"],
|
||||
["587d7faa367417b2b2512bd4", "Add a Hover Effect to a D3 Element"],
|
||||
["587d7faa367417b2b2512bd6", "Add a Tooltip to a D3 Element"],
|
||||
["587d7fab367417b2b2512bd7", "Create a Scatterplot with SVG Circles"],
|
||||
["587d7fab367417b2b2512bd8", "Add Attributes to the Circle Elements"],
|
||||
["587d7fab367417b2b2512bd9", "Add Labels to Scatter Plot Circles"],
|
||||
["587d7fab367417b2b2512bda", "Create a Linear Scale with D3"],
|
||||
["587d7fac367417b2b2512bdb", "Set a Domain and a Range on a Scale"],
|
||||
[
|
||||
"587d7fac367417b2b2512bdc",
|
||||
"Use the d3.max and d3.min Functions to Find Minimum and Maximum Values in a Dataset"
|
||||
],
|
||||
["587d7fac367417b2b2512bdd", "Use Dynamic Scales"],
|
||||
["587d7fac367417b2b2512bde", "Use a Pre-Defined Scale to Place Elements"],
|
||||
["587d7fad367417b2b2512bdf", "Add Axes to a Visualization"]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "04-data-visualization/data-visualization-with-d3.json"
|
||||
}
|
62
curriculum/challenges/_meta/debugging/meta.json
Normal file
62
curriculum/challenges/_meta/debugging/meta.json
Normal file
@ -0,0 +1,62 @@
|
||||
{
|
||||
"name": "Debugging",
|
||||
"dashedName": "debugging",
|
||||
"order": 4,
|
||||
"time": "1 hour",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "javascript-algorithms-and-data-structures",
|
||||
"superOrder": 2,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d7b83367417b2b2512b33",
|
||||
"Use the JavaScript Console to Check the Value of a Variable"
|
||||
],
|
||||
[
|
||||
"587d7b83367417b2b2512b37",
|
||||
"Understanding the Differences between the freeCodeCamp and Browser Console"
|
||||
],
|
||||
[
|
||||
"587d7b84367417b2b2512b34",
|
||||
"Use typeof to Check the Type of a Variable"
|
||||
],
|
||||
[
|
||||
"587d7b84367417b2b2512b35",
|
||||
"Catch Misspelled Variable and Function Names"
|
||||
],
|
||||
[
|
||||
"587d7b84367417b2b2512b36",
|
||||
"Catch Unclosed Parentheses, Brackets, Braces and Quotes"
|
||||
],
|
||||
[
|
||||
"587d7b84367417b2b2512b37",
|
||||
"Catch Mixed Usage of Single and Double Quotes"
|
||||
],
|
||||
[
|
||||
"587d7b85367417b2b2512b38",
|
||||
"Catch Use of Assignment Operator Instead of Equality Operator"
|
||||
],
|
||||
[
|
||||
"587d7b85367417b2b2512b39",
|
||||
"Catch Missing Open and Closing Parenthesis After a Function Call"
|
||||
],
|
||||
[
|
||||
"587d7b85367417b2b2512b3a",
|
||||
"Catch Arguments Passed in the Wrong Order When Calling a Function"
|
||||
],
|
||||
[
|
||||
"587d7b86367417b2b2512b3b",
|
||||
"Catch Off By One Errors When Using Indexing"
|
||||
],
|
||||
[
|
||||
"587d7b86367417b2b2512b3c",
|
||||
"Use Caution When Reinitializing Variables Inside a Loop"
|
||||
],
|
||||
[
|
||||
"587d7b86367417b2b2512b3d",
|
||||
"Prevent Infinite Loops with a Valid Terminal Condition"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "02-javascript-algorithms-and-data-structures/debugging.json"
|
||||
}
|
118
curriculum/challenges/_meta/es6/meta.json
Normal file
118
curriculum/challenges/_meta/es6/meta.json
Normal file
@ -0,0 +1,118 @@
|
||||
{
|
||||
"name": "ES6",
|
||||
"dashedName": "es6",
|
||||
"order": 2,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "javascript-algorithms-and-data-structures",
|
||||
"superOrder": 2,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d7b87367417b2b2512b3f",
|
||||
"Explore Differences Between the var and let Keywords"
|
||||
],
|
||||
[
|
||||
"587d7b87367417b2b2512b40",
|
||||
"Compare Scopes of the var and let Keywords"
|
||||
],
|
||||
[
|
||||
"587d7b87367417b2b2512b41",
|
||||
"Declare a Read-Only Variable with the const Keyword"
|
||||
],
|
||||
[
|
||||
"587d7b87367417b2b2512b42",
|
||||
"Mutate an Array Declared with const"
|
||||
],
|
||||
[
|
||||
"598f48a36c8c40764b4e52b3",
|
||||
"Prevent Object Mutation"
|
||||
],
|
||||
[
|
||||
"587d7b87367417b2b2512b43",
|
||||
"Use Arrow Functions to Write Concise Anonymous Functions"
|
||||
],
|
||||
[
|
||||
"587d7b88367417b2b2512b44",
|
||||
"Write Arrow Functions with Parameters"
|
||||
],
|
||||
[
|
||||
"587d7b88367417b2b2512b45",
|
||||
"Write Higher Order Arrow Functions"
|
||||
],
|
||||
[
|
||||
"587d7b88367417b2b2512b46",
|
||||
"Set Default Parameters for Your Functions"
|
||||
],
|
||||
[
|
||||
"587d7b88367417b2b2512b47",
|
||||
"Use the Rest Operator with Function Parameters"
|
||||
],
|
||||
[
|
||||
"587d7b89367417b2b2512b48",
|
||||
"Use the Spread Operator to Evaluate Arrays In-Place"
|
||||
],
|
||||
[
|
||||
"587d7b89367417b2b2512b49",
|
||||
"Use Destructuring Assignment to Assign Variables from Objects"
|
||||
],
|
||||
[
|
||||
"587d7b89367417b2b2512b4a",
|
||||
"Use Destructuring Assignment to Assign Variables from Nested Objects"
|
||||
],
|
||||
[
|
||||
"587d7b89367417b2b2512b4b",
|
||||
"Use Destructuring Assignment to Assign Variables from Arrays"
|
||||
],
|
||||
[
|
||||
"587d7b8a367417b2b2512b4c",
|
||||
"Use Destructuring Assignment with the Rest Operator to Reassign Array Elements"
|
||||
],
|
||||
[
|
||||
"587d7b8a367417b2b2512b4d",
|
||||
"Use Destructuring Assignment to Pass an Object as a Function's Parameters"
|
||||
],
|
||||
[
|
||||
"587d7b8a367417b2b2512b4e",
|
||||
"Create Strings using Template Literals"
|
||||
],
|
||||
[
|
||||
"587d7b8a367417b2b2512b4f",
|
||||
"Write Concise Object Literal Declarations Using Simple Fields"
|
||||
],
|
||||
[
|
||||
"587d7b8b367417b2b2512b50",
|
||||
"Write Concise Declarative Functions with ES6"
|
||||
],
|
||||
[
|
||||
"587d7b8b367417b2b2512b53",
|
||||
"Use class Syntax to Define a Constructor Function"
|
||||
],
|
||||
[
|
||||
"587d7b8c367417b2b2512b54",
|
||||
"Use getters and setters to Control Access to an Object"
|
||||
],
|
||||
[
|
||||
"587d7b8c367417b2b2512b55",
|
||||
"Understand the Differences Between import and require"
|
||||
],
|
||||
[
|
||||
"587d7b8c367417b2b2512b56",
|
||||
"Use export to Reuse a Code Block"
|
||||
],
|
||||
[
|
||||
"587d7b8c367417b2b2512b57",
|
||||
"Use * to Import Everything from a File"
|
||||
],
|
||||
[
|
||||
"587d7b8c367417b2b2512b58",
|
||||
"Create an Export Fallback with export default"
|
||||
],
|
||||
[
|
||||
"587d7b8d367417b2b2512b59",
|
||||
"Import a Default Export"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "02-javascript-algorithms-and-data-structures/es6.json"
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
{
|
||||
"name": "Front End Libraries Certificate",
|
||||
"dashedName": "front-end-libraries-certificate",
|
||||
"order": 3,
|
||||
"time": "",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "certificates",
|
||||
"superOrder": 9,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"561acd10cb82ac38a17513bc",
|
||||
"Front End Libraries Certificate"
|
||||
]
|
||||
],
|
||||
"isPrivate": true,
|
||||
"fileName": "09-certificates/front-end-libraries-certificate.json"
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
{
|
||||
"name": "Front End Libraries Projects",
|
||||
"dashedName": "front-end-libraries-projects",
|
||||
"order": 8,
|
||||
"time": "150 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "front-end-libraries",
|
||||
"superOrder": 3,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"bd7158d8c442eddfaeb5bd13",
|
||||
"Build a Random Quote Machine"
|
||||
],
|
||||
[
|
||||
"bd7157d8c242eddfaeb5bd13",
|
||||
"Build a Markdown Previewer"
|
||||
],
|
||||
[
|
||||
"587d7dbc367417b2b2512bae",
|
||||
"Build a Drum Machine"
|
||||
],
|
||||
[
|
||||
"bd7158d8c442eddfaeb5bd17",
|
||||
"Build a JavaScript Calculator"
|
||||
],
|
||||
[
|
||||
"bd7158d8c442eddfaeb5bd0f",
|
||||
"Build a Pomodoro Clock"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "03-front-end-libraries/front-end-libraries-projects.json"
|
||||
}
|
106
curriculum/challenges/_meta/functional-programming/meta.json
Normal file
106
curriculum/challenges/_meta/functional-programming/meta.json
Normal file
@ -0,0 +1,106 @@
|
||||
{
|
||||
"name": "Functional Programming",
|
||||
"dashedName": "functional-programming",
|
||||
"order": 8,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "javascript-algorithms-and-data-structures",
|
||||
"superOrder": 2,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d7b8d367417b2b2512b5b",
|
||||
"Learn About Functional Programming"
|
||||
],
|
||||
[
|
||||
"587d7b8e367417b2b2512b5c",
|
||||
"Understand Functional Programming Terminology"
|
||||
],
|
||||
[
|
||||
"587d7b8e367417b2b2512b5d",
|
||||
"Understand the Hazards of Using Imperative Code"
|
||||
],
|
||||
[
|
||||
"587d7b8e367417b2b2512b5e",
|
||||
"Avoid Mutations and Side Effects Using Functional Programming"
|
||||
],
|
||||
[
|
||||
"587d7b8e367417b2b2512b5f",
|
||||
"Pass Arguments to Avoid External Dependence in a Function"
|
||||
],
|
||||
[
|
||||
"587d7b8f367417b2b2512b60",
|
||||
"Refactor Global Variables Out of Functions"
|
||||
],
|
||||
[
|
||||
"587d7b8f367417b2b2512b61",
|
||||
"Use the map Method to Extract Data from an Array"
|
||||
],
|
||||
[
|
||||
"587d7b8f367417b2b2512b62",
|
||||
"Implement map on a Prototype"
|
||||
],
|
||||
[
|
||||
"587d7b8f367417b2b2512b63",
|
||||
"Use the filter Method to Extract Data from an Array"
|
||||
],
|
||||
[
|
||||
"587d7b8f367417b2b2512b64",
|
||||
"Implement the filter Method on a Prototype"
|
||||
],
|
||||
[
|
||||
"587d7b90367417b2b2512b65",
|
||||
"Return Part of an Array Using the slice Method"
|
||||
],
|
||||
[
|
||||
"9d7123c8c441eeafaeb5bdef",
|
||||
"Remove Elements from an Array Using slice Instead of splice"
|
||||
],
|
||||
[
|
||||
"587d7da9367417b2b2512b66",
|
||||
"Combine Two Arrays Using the concat Method"
|
||||
],
|
||||
[
|
||||
"587d7da9367417b2b2512b67",
|
||||
"Add Elements to the End of an Array Using concat Instead of push"
|
||||
],
|
||||
[
|
||||
"587d7da9367417b2b2512b68",
|
||||
"Use the reduce Method to Analyze Data"
|
||||
],
|
||||
[
|
||||
"587d7da9367417b2b2512b69",
|
||||
"Sort an Array Alphabetically using the sort Method"
|
||||
],
|
||||
[
|
||||
"587d7da9367417b2b2512b6a",
|
||||
"Return a Sorted Array Without Changing the Original Array"
|
||||
],
|
||||
[
|
||||
"587d7daa367417b2b2512b6b",
|
||||
"Split a String into an Array Using the split Method"
|
||||
],
|
||||
[
|
||||
"587d7daa367417b2b2512b6c",
|
||||
"Combine an Array into a String Using the join Method"
|
||||
],
|
||||
[
|
||||
"587d7dab367417b2b2512b6d",
|
||||
"Apply Functional Programming to Convert Strings to URL Slugs"
|
||||
],
|
||||
[
|
||||
"587d7dab367417b2b2512b6e",
|
||||
"Use the every Method to Check that Every Element in an Array Meets a Criteria"
|
||||
],
|
||||
[
|
||||
"587d7dab367417b2b2512b6f",
|
||||
"Use the some Method to Check that Any Elements in an Array Meet a Criteria"
|
||||
],
|
||||
[
|
||||
"587d7dab367417b2b2512b70",
|
||||
"Introduction to Currying and Partial Application"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "02-javascript-algorithms-and-data-structures/functional-programming.json"
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
{
|
||||
"name": "Information Security and Quality Assurance Projects",
|
||||
"dashedName": "information-security-and-quality-assurance-projects",
|
||||
"order": 4,
|
||||
"time": "150 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "information-security-and-quality-assurance",
|
||||
"superOrder": 6,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d8249367417b2b2512c41",
|
||||
"Metric-Imperial Converter"
|
||||
],
|
||||
[
|
||||
"587d8249367417b2b2512c42",
|
||||
"Issue Tracker"
|
||||
],
|
||||
[
|
||||
"587d824a367417b2b2512c43",
|
||||
"Personal Library"
|
||||
],
|
||||
[
|
||||
"587d824a367417b2b2512c44",
|
||||
"Stock Price Checker"
|
||||
],
|
||||
[
|
||||
"587d824a367417b2b2512c45",
|
||||
"Anonymous Message Board"
|
||||
]
|
||||
],
|
||||
"helpRoom": "HelpBackend",
|
||||
"fileName": "06-information-security-and-quality-assurance/quality-assurance-and-information-security-projects.json"
|
||||
}
|
@ -0,0 +1,70 @@
|
||||
{
|
||||
"name": "Information Security with HelmetJS",
|
||||
"dashedName": "information-security-with-helmetjs",
|
||||
"order": 1,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "information-security-and-quality-assurance",
|
||||
"superOrder": 6,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d8247367417b2b2512c36",
|
||||
"Install and Require Helmet"
|
||||
],
|
||||
[
|
||||
"587d8247367417b2b2512c37",
|
||||
"Hide Potentially Dangerous Information Using helmet.hidePoweredBy()"
|
||||
],
|
||||
[
|
||||
"587d8247367417b2b2512c38",
|
||||
"Mitigate the Risk of Clickjacking with helmet.frameguard()"
|
||||
],
|
||||
[
|
||||
"587d8247367417b2b2512c39",
|
||||
"Mitigate the Risk of Cross Site Scripting (XSS) Attacks with helmet.xssFilter()"
|
||||
],
|
||||
[
|
||||
"587d8248367417b2b2512c3a",
|
||||
"Avoid Inferring the Response MIME Type with helmet.noSniff()"
|
||||
],
|
||||
[
|
||||
"587d8248367417b2b2512c3b",
|
||||
"Prevent IE from Opening Untrusted HTML with helmet.ieNoOpen()"
|
||||
],
|
||||
[
|
||||
"587d8248367417b2b2512c3c",
|
||||
"Ask Browsers to Access Your Site via HTTPS Only with helmet.hsts()"
|
||||
],
|
||||
[
|
||||
"587d8248367417b2b2512c3d",
|
||||
"Disable DNS Prefetching with helmet.dnsPrefetchControl()"
|
||||
],
|
||||
[
|
||||
"587d8249367417b2b2512c3e",
|
||||
"Disable Client-Side Caching with helmet.noCache()"
|
||||
],
|
||||
[
|
||||
"587d8249367417b2b2512c3f",
|
||||
"Set a Content Security Policy with helmet.contentSecurityPolicy()"
|
||||
],
|
||||
[
|
||||
"587d8249367417b2b2512c40",
|
||||
"Configure Helmet Using the ‘parent’ helmet() Middleware"
|
||||
],
|
||||
[
|
||||
"58a25bcef9fc0f352b528e7c",
|
||||
"Understand BCrypt Hashes"
|
||||
],
|
||||
[
|
||||
"58a25bcff9fc0f352b528e7d",
|
||||
"Hash and Compare Passwords Asynchronously"
|
||||
],
|
||||
[
|
||||
"58a25bcff9fc0f352b528e7e",
|
||||
"Hash and Compare Passwords Synchronously"
|
||||
]
|
||||
],
|
||||
"helpRoom": "HelpBackend",
|
||||
"fileName": "06-information-security-and-quality-assurance/helmetjs.json"
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
{
|
||||
"name": "Information, Securtiy and Quality Assurance Certificate",
|
||||
"dashedName": "information-securtiy-and-quality-assurance-certificate",
|
||||
"order": 6,
|
||||
"time": "",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "certificates",
|
||||
"superOrder": 9,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"561add10cb82ac38a17213bc",
|
||||
"Information, Securtiy and Quality Assurance Certificate"
|
||||
]
|
||||
],
|
||||
"isPrivate": true,
|
||||
"fileName": "09-certificates/information-security-and-quality-assurance-certificate.json"
|
||||
}
|
@ -0,0 +1,98 @@
|
||||
{
|
||||
"name": "Intermediate Algorithm Scripting",
|
||||
"dashedName": "intermediate-algorithm-scripting",
|
||||
"order": 9,
|
||||
"time": "50 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "javascript-algorithms-and-data-structures",
|
||||
"superOrder": 2,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"a3566b1109230028080c9345",
|
||||
"Sum All Numbers in a Range"
|
||||
],
|
||||
[
|
||||
"a5de63ebea8dbee56860f4f2",
|
||||
"Diff Two Arrays"
|
||||
],
|
||||
[
|
||||
"a39963a4c10bc8b4d4f06d7e",
|
||||
"Seek and Destroy"
|
||||
],
|
||||
[
|
||||
"a8e512fbe388ac2f9198f0fa",
|
||||
"Wherefore art thou"
|
||||
],
|
||||
[
|
||||
"a103376db3ba46b2d50db289",
|
||||
"Spinal Tap Case"
|
||||
],
|
||||
[
|
||||
"aa7697ea2477d1316795783b",
|
||||
"Pig Latin"
|
||||
],
|
||||
[
|
||||
"a0b5010f579e69b815e7c5d6",
|
||||
"Search and Replace"
|
||||
],
|
||||
[
|
||||
"afd15382cdfb22c9efe8b7de",
|
||||
"DNA Pairing"
|
||||
],
|
||||
[
|
||||
"af7588ade1100bde429baf20",
|
||||
"Missing letters"
|
||||
],
|
||||
[
|
||||
"a105e963526e7de52b219be9",
|
||||
"Sorted Union"
|
||||
],
|
||||
[
|
||||
"a6b0bb188d873cb2c8729495",
|
||||
"Convert HTML Entities"
|
||||
],
|
||||
[
|
||||
"a5229172f011153519423690",
|
||||
"Sum All Odd Fibonacci Numbers"
|
||||
],
|
||||
[
|
||||
"a3bfc1673c0526e06d3ac698",
|
||||
"Sum All Primes"
|
||||
],
|
||||
[
|
||||
"ae9defd7acaf69703ab432ea",
|
||||
"Smallest Common Multiple"
|
||||
],
|
||||
[
|
||||
"a5deed1811a43193f9f1c841",
|
||||
"Drop it"
|
||||
],
|
||||
[
|
||||
"ab306dbdcc907c7ddfc30830",
|
||||
"Steamroller"
|
||||
],
|
||||
[
|
||||
"a8d97bd4c764e91f9d2bda01",
|
||||
"Binary Agents"
|
||||
],
|
||||
[
|
||||
"a10d2431ad0c6a099a4b8b52",
|
||||
"Everything Be True"
|
||||
],
|
||||
[
|
||||
"a97fd23d9b809dac9921074f",
|
||||
"Arguments Optional"
|
||||
],
|
||||
[
|
||||
"a2f1d72d9b908d0bd72bb9f6",
|
||||
"Make a Person"
|
||||
],
|
||||
[
|
||||
"af4afb223120f7348cdfc9fd",
|
||||
"Map the Debris"
|
||||
]
|
||||
],
|
||||
"helpRoom": "HelpJavaScript",
|
||||
"fileName": "02-javascript-algorithms-and-data-structures/intermediate-algorithm-scripting.json"
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
{
|
||||
"name": "JavaScript Algorithms and Data Structures Certificate",
|
||||
"dashedName": "javascript-algorithms-and-data-structures-certificate",
|
||||
"order": 2,
|
||||
"time": "",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "certificates",
|
||||
"superOrder": 9,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"561abd10cb81ac38a17513bc",
|
||||
"JavaScript Algorithms and Data Structures Certificate"
|
||||
]
|
||||
],
|
||||
"isPrivate": true,
|
||||
"fileName": "09-certificates/javascript-algorithms-and-data-structures-certificate.json"
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
{
|
||||
"name": "JavaScript Algorithms and Data Structures Projects",
|
||||
"dashedName": "javascript-algorithms-and-data-structures-projects",
|
||||
"order": 10,
|
||||
"time": "50 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "javascript-algorithms-and-data-structures",
|
||||
"superOrder": 2,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"aaa48de84e1ecc7c742e1124",
|
||||
"Palindrome Checker"
|
||||
],
|
||||
[
|
||||
"a7f4d8f2483413a6ce226cac",
|
||||
"Roman Numeral Converter"
|
||||
],
|
||||
[
|
||||
"56533eb9ac21ba0edf2244e2",
|
||||
"Caesars Cipher"
|
||||
],
|
||||
[
|
||||
"aff0395860f5d3034dc0bfc9",
|
||||
"Telephone Number Validator"
|
||||
],
|
||||
[
|
||||
"aa2e6f85cab2ab736c9a9b24",
|
||||
"Cash Register"
|
||||
]
|
||||
],
|
||||
"helpRoom": "HelpJavaScript",
|
||||
"fileName": "02-javascript-algorithms-and-data-structures/javascript-algorithms-and-data-structures-projects.json"
|
||||
}
|
90
curriculum/challenges/_meta/jquery/meta.json
Normal file
90
curriculum/challenges/_meta/jquery/meta.json
Normal file
@ -0,0 +1,90 @@
|
||||
{
|
||||
"name": "jQuery",
|
||||
"dashedName": "jquery",
|
||||
"order": 3,
|
||||
"time": "3 hours",
|
||||
"template": "",
|
||||
"required": [
|
||||
{
|
||||
"link": "https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.css"
|
||||
}
|
||||
],
|
||||
"superBlock": "front-end-libraries",
|
||||
"superOrder": 3,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"bad87fee1348bd9acdd08826",
|
||||
"Learn How Script Tags and Document Ready Work"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9bedc08826",
|
||||
"Target HTML Elements with Selectors Using jQuery"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aedc08826",
|
||||
"Target Elements by Class Using jQuery"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aeda08826",
|
||||
"Target Elements by id Using jQuery"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aeda08726",
|
||||
"Delete Your jQuery Functions"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aed908626",
|
||||
"Target the Same Element with Multiple jQuery Selectors"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aed918626",
|
||||
"Remove Classes from an Element with jQuery"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aed908826",
|
||||
"Change the CSS of an Element Using jQuery"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aed808826",
|
||||
"Disable an Element Using jQuery"
|
||||
],
|
||||
[
|
||||
"564944c91be2204b269d51e3",
|
||||
"Change Text Inside an Element Using jQuery"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aed708826",
|
||||
"Remove an Element Using jQuery"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aed608826",
|
||||
"Use appendTo to Move Elements with jQuery"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aed508826",
|
||||
"Clone an Element Using jQuery"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aed308826",
|
||||
"Target the Parent of an Element Using jQuery"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aed208826",
|
||||
"Target the Children of an Element Using jQuery"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aed108826",
|
||||
"Target a Specific Child of an Element Using jQuery"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aed008826",
|
||||
"Target Even Elements Using jQuery"
|
||||
],
|
||||
[
|
||||
"bad87fee1348bd9aecb08826",
|
||||
"Use jQuery to Modify the Entire Page"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "03-front-end-libraries/jquery.json"
|
||||
}
|
54
curriculum/challenges/_meta/json-apis-and-ajax/meta.json
Normal file
54
curriculum/challenges/_meta/json-apis-and-ajax/meta.json
Normal file
@ -0,0 +1,54 @@
|
||||
{
|
||||
"name": "JSON APIs and AJAX",
|
||||
"dashedName": "json-apis-and-ajax",
|
||||
"order": 2,
|
||||
"time": "2 hours",
|
||||
"template": "",
|
||||
"required": [
|
||||
{
|
||||
"link": "https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.css"
|
||||
}
|
||||
],
|
||||
"superBlock": "data-visualization",
|
||||
"superOrder": 4,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d7fad367417b2b2512be1",
|
||||
"Handle Click Events with JavaScript using the onclick property"
|
||||
],
|
||||
[
|
||||
"587d7fad367417b2b2512be2",
|
||||
"Change Text with click Events"
|
||||
],
|
||||
[
|
||||
"587d7fae367417b2b2512be3",
|
||||
"Get JSON with the JavaScript XMLHttpRequest Method"
|
||||
],
|
||||
[
|
||||
"587d7fae367417b2b2512be4",
|
||||
"Access the JSON Data from an API"
|
||||
],
|
||||
[
|
||||
"587d7fae367417b2b2512be5",
|
||||
"Convert JSON Data to HTML"
|
||||
],
|
||||
[
|
||||
"587d7fae367417b2b2512be6",
|
||||
"Render Images from Data Sources"
|
||||
],
|
||||
[
|
||||
"587d7fae367417b2b2512be7",
|
||||
"Pre-filter JSON to Get the Data You Need"
|
||||
],
|
||||
[
|
||||
"587d7faf367417b2b2512be8",
|
||||
"Get Geolocation Data to Find A User's GPS Coordinates"
|
||||
],
|
||||
[
|
||||
"587d7faf367417b2b2512be9",
|
||||
"Post Data with the JavaScript XMLHttpRequest Method"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "04-data-visualization/json-apis-and-ajax.json"
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
{
|
||||
"name": "Legacy Back End Certificate",
|
||||
"dashedName": "legacy-back-end-certificate",
|
||||
"order": 1,
|
||||
"time": "",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "certificates",
|
||||
"superOrder": 9,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"660add10cb82ac38a17513be",
|
||||
"Legacy Back End Certificate"
|
||||
]
|
||||
],
|
||||
"isPrivate": true,
|
||||
"fileName": "09-certificates/legacy-back-end-certificate.json"
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
{
|
||||
"name": "Legacy Data Visualization Certificate",
|
||||
"dashedName": "legacy-data-visualization-certificate",
|
||||
"order": 1,
|
||||
"time": "",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "certificates",
|
||||
"superOrder": 9,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"561add10cb82ac39a17513bc",
|
||||
"Legacy Data Visualization Certificate"
|
||||
]
|
||||
],
|
||||
"isPrivate": true,
|
||||
"fileName": "09-certificates/legacy-data-visualization-certificate.json"
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
{
|
||||
"name": "Legacy Front End Certificate",
|
||||
"dashedName": "legacy-front-end-certificate",
|
||||
"order": 1,
|
||||
"time": "",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "certificates",
|
||||
"superOrder": 9,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"561add10cb82ac38a17513be",
|
||||
"Legacy Front End Certificate"
|
||||
]
|
||||
],
|
||||
"isPrivate": true,
|
||||
"fileName": "09-certificates/legacy-front-end-certificate.json"
|
||||
}
|
@ -0,0 +1,118 @@
|
||||
{
|
||||
"name": "Object Oriented Programming",
|
||||
"dashedName": "object-oriented-programming",
|
||||
"order": 7,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "javascript-algorithms-and-data-structures",
|
||||
"superOrder": 2,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d7dac367417b2b2512b73",
|
||||
"Create a Basic JavaScript Object"
|
||||
],
|
||||
[
|
||||
"587d7dac367417b2b2512b74",
|
||||
"Use Dot Notation to Access the Properties of an Object"
|
||||
],
|
||||
[
|
||||
"587d7dad367417b2b2512b75",
|
||||
"Create a Method on an Object"
|
||||
],
|
||||
[
|
||||
"587d7dad367417b2b2512b76",
|
||||
"Make Code More Reusable with the this Keyword"
|
||||
],
|
||||
[
|
||||
"587d7dad367417b2b2512b77",
|
||||
"Define a Constructor Function"
|
||||
],
|
||||
[
|
||||
"587d7dad367417b2b2512b78",
|
||||
"Use a Constructor to Create Objects"
|
||||
],
|
||||
[
|
||||
"587d7dae367417b2b2512b79",
|
||||
"Extend Constructors to Receive Arguments"
|
||||
],
|
||||
[
|
||||
"587d7dae367417b2b2512b7a",
|
||||
"Verify an Object's Constructor with instanceof"
|
||||
],
|
||||
[
|
||||
"587d7dae367417b2b2512b7b",
|
||||
"Understand Own Properties"
|
||||
],
|
||||
[
|
||||
"587d7dae367417b2b2512b7c",
|
||||
"Use Prototype Properties to Reduce Duplicate Code"
|
||||
],
|
||||
[
|
||||
"587d7daf367417b2b2512b7d",
|
||||
"Iterate Over All Properties"
|
||||
],
|
||||
[
|
||||
"587d7daf367417b2b2512b7e",
|
||||
"Understand the Constructor Property"
|
||||
],
|
||||
[
|
||||
"587d7daf367417b2b2512b7f",
|
||||
"Change the Prototype to a New Object"
|
||||
],
|
||||
[
|
||||
"587d7daf367417b2b2512b80",
|
||||
"Remember to Set the Constructor Property when Changing the Prototype"
|
||||
],
|
||||
[
|
||||
"587d7db0367417b2b2512b81",
|
||||
"Understand Where an Object’s Prototype Comes From"
|
||||
],
|
||||
[
|
||||
"587d7db0367417b2b2512b82",
|
||||
"Understand the Prototype Chain"
|
||||
],
|
||||
[
|
||||
"587d7db0367417b2b2512b83",
|
||||
"Use Inheritance So You Don't Repeat Yourself"
|
||||
],
|
||||
[
|
||||
"587d7db0367417b2b2512b84",
|
||||
"Inherit Behaviors from a Supertype"
|
||||
],
|
||||
[
|
||||
"587d7db1367417b2b2512b85",
|
||||
"Set the Child's Prototype to an Instance of the Parent"
|
||||
],
|
||||
[
|
||||
"587d7db1367417b2b2512b86",
|
||||
"Reset an Inherited Constructor Property"
|
||||
],
|
||||
[
|
||||
"587d7db1367417b2b2512b87",
|
||||
"Add Methods After Inheritance"
|
||||
],
|
||||
[
|
||||
"587d7db1367417b2b2512b88",
|
||||
"Override Inherited Methods"
|
||||
],
|
||||
[
|
||||
"587d7db2367417b2b2512b89",
|
||||
"Use a Mixin to Add Common Behavior Between Unrelated Objects"
|
||||
],
|
||||
[
|
||||
"587d7db2367417b2b2512b8a",
|
||||
"Use Closure to Protect Properties Within an Object from Being Modified Externally"
|
||||
],
|
||||
[
|
||||
"587d7db2367417b2b2512b8b",
|
||||
"Understand the Immediately Invoked Function Expression (IIFE)"
|
||||
],
|
||||
[
|
||||
"587d7db2367417b2b2512b8c",
|
||||
"Use an IIFE to Create a Module"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "02-javascript-algorithms-and-data-structures/object-oriented-programming.json"
|
||||
}
|
1934
curriculum/challenges/_meta/project-euler/meta.json
Normal file
1934
curriculum/challenges/_meta/project-euler/meta.json
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,110 @@
|
||||
{
|
||||
"name": "Quality Assurance and Testing with Chai",
|
||||
"dashedName": "quality-assurance-and-testing-with-chai",
|
||||
"order": 2,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "information-security-and-quality-assurance",
|
||||
"superOrder": 6,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d824a367417b2b2512c46",
|
||||
"Learn How JavaScript Assertions Work"
|
||||
],
|
||||
[
|
||||
"587d824b367417b2b2512c47",
|
||||
"Test if a Variable or Function is Defined"
|
||||
],
|
||||
[
|
||||
"587d824b367417b2b2512c48",
|
||||
"Use Assert.isOK and Assert.isNotOK"
|
||||
],
|
||||
[
|
||||
"587d824b367417b2b2512c49",
|
||||
"Test for Truthiness"
|
||||
],
|
||||
[
|
||||
"587d824b367417b2b2512c4a",
|
||||
"Use the Double Equals to Assert Equality"
|
||||
],
|
||||
[
|
||||
"587d824b367417b2b2512c4b",
|
||||
"Use the Triple Equals to Assert Strict Equality"
|
||||
],
|
||||
[
|
||||
"587d824c367417b2b2512c4c",
|
||||
"Assert Deep Equality with .deepEqual and .notDeepEqual"
|
||||
],
|
||||
[
|
||||
"587d824c367417b2b2512c4d",
|
||||
"Compare the Properties of Two Elements"
|
||||
],
|
||||
[
|
||||
"587d824c367417b2b2512c4e",
|
||||
"Test if One Value is Below or At Least as Large as Another"
|
||||
],
|
||||
[
|
||||
"587d824c367417b2b2512c4f",
|
||||
"Test if a Value Falls within a Specific Range"
|
||||
],
|
||||
[
|
||||
"587d824d367417b2b2512c50",
|
||||
"Test if a Value is an Array"
|
||||
],
|
||||
[
|
||||
"587d824d367417b2b2512c51",
|
||||
"Test if an Array Contains an Item"
|
||||
],
|
||||
[
|
||||
"587d824d367417b2b2512c52",
|
||||
"Test if a Value is a String"
|
||||
],
|
||||
[
|
||||
"587d824d367417b2b2512c53",
|
||||
"Test if a String Contains a Substring"
|
||||
],
|
||||
[
|
||||
"587d824d367417b2b2512c54",
|
||||
"Use Regular Expressions to Test a String"
|
||||
],
|
||||
[
|
||||
"587d824e367417b2b2512c55",
|
||||
"Test if an Object has a Property"
|
||||
],
|
||||
[
|
||||
"587d824e367417b2b2512c56",
|
||||
"Test if a Value is of a Specific Data Structure Type"
|
||||
],
|
||||
[
|
||||
"587d824e367417b2b2512c57",
|
||||
"Test if an Object is an Instance of a Constructor"
|
||||
],
|
||||
[
|
||||
"587d824e367417b2b2512c58",
|
||||
"Run Functional Tests on API Endpoints using Chai-HTTP"
|
||||
],
|
||||
[
|
||||
"587d824f367417b2b2512c59",
|
||||
"Run Functional Tests on API Endpoints using Chai-HTTP II"
|
||||
],
|
||||
[
|
||||
"587d824f367417b2b2512c5a",
|
||||
"Run Functional Tests on an API Response using Chai-HTTP III - PUT method"
|
||||
],
|
||||
[
|
||||
"587d824f367417b2b2512c5b",
|
||||
"Run Functional Tests on an API Response using Chai-HTTP IV - PUT method"
|
||||
],
|
||||
[
|
||||
"587d824f367417b2b2512c5c",
|
||||
"Run Functional Tests using a Headless Browser"
|
||||
],
|
||||
[
|
||||
"587d8250367417b2b2512c5d",
|
||||
"Run Functional Tests using a Headless Browser II"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "06-information-security-and-quality-assurance/testing-with-chai.json"
|
||||
}
|
67
curriculum/challenges/_meta/react-and-redux/meta.json
Normal file
67
curriculum/challenges/_meta/react-and-redux/meta.json
Normal file
@ -0,0 +1,67 @@
|
||||
{
|
||||
"name": "React and Redux",
|
||||
"dashedName": "react-and-redux",
|
||||
"order": 7,
|
||||
"time": "5 hours",
|
||||
"template": "<body><div id='root'></div>${ source || '' }</body>",
|
||||
"required": [
|
||||
{
|
||||
"src": "https://unpkg.com/react@16.4.0/umd/react.production.min.js"
|
||||
},
|
||||
{
|
||||
"src": "https://unpkg.com/react-dom@16.4.0/umd/react-dom.production.min.js"
|
||||
},
|
||||
{
|
||||
"src": "https://cdnjs.cloudflare.com/ajax/libs/redux/3.7.2/redux.min.js"
|
||||
},
|
||||
{
|
||||
"src": "https://cdnjs.cloudflare.com/ajax/libs/react-redux/5.0.7/react-redux.min.js"
|
||||
}
|
||||
],
|
||||
"superBlock": "front-end-libraries",
|
||||
"superOrder": 3,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"5a24c314108439a4d4036141",
|
||||
"Getting Started with React Redux"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036142",
|
||||
"Manage State Locally First"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036143",
|
||||
"Extract State Logic to Redux"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036144",
|
||||
"Use Provider to Connect Redux to React"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036145",
|
||||
"Map State to Props"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036146",
|
||||
"Map Dispatch to Props"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036147",
|
||||
"Connect Redux to React"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036148",
|
||||
"Connect Redux to the Messages App"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036149",
|
||||
"Extract Local State into Redux"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403614a",
|
||||
"Moving Forward From Here"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "03-front-end-libraries/react-and-redux.json"
|
||||
}
|
213
curriculum/challenges/_meta/react/meta.json
Normal file
213
curriculum/challenges/_meta/react/meta.json
Normal file
@ -0,0 +1,213 @@
|
||||
{
|
||||
"name": "React",
|
||||
"dashedName": "react",
|
||||
"order": 5,
|
||||
"time": "5 hours",
|
||||
"template": "<body><div id='root'></div><div id='challenge-node'></div>${ source || '' }</body>",
|
||||
"required": [
|
||||
{
|
||||
"src": "https://unpkg.com/react@16.4.0/umd/react.production.min.js"
|
||||
},
|
||||
{
|
||||
"src": "https://unpkg.com/react-dom@16.4.0/umd/react-dom.production.min.js"
|
||||
}
|
||||
],
|
||||
"superBlock": "front-end-libraries",
|
||||
"superOrder": 3,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d7dbc367417b2b2512bb1",
|
||||
"Create a Simple JSX Element"
|
||||
],
|
||||
[
|
||||
"5a24bbe0dba28a8d3cbd4c5d",
|
||||
"Create a Complex JSX Element"
|
||||
],
|
||||
[
|
||||
"5a24bbe0dba28a8d3cbd4c5e",
|
||||
"Add Comments in JSX"
|
||||
],
|
||||
[
|
||||
"5a24bbe0dba28a8d3cbd4c5f",
|
||||
"Render HTML Elements to the DOM"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036160",
|
||||
"Define an HTML Class in JSX"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036161",
|
||||
"Learn About Self-Closing JSX Tags"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036162",
|
||||
"Create a Stateless Functional Component"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036163",
|
||||
"Create a React Component"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036164",
|
||||
"Create a Component with Composition"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036165",
|
||||
"Use React to Render Nested Components"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036166",
|
||||
"Compose React Components"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036167",
|
||||
"Render a Class Component to the DOM"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036168",
|
||||
"Write a React Component from Scratch"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036169",
|
||||
"Pass Props to a Stateless Functional Component"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403616a",
|
||||
"Pass an Array as Props"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403616b",
|
||||
"Use Default Props"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403616c",
|
||||
"Override Default Props"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403616d",
|
||||
"Use PropTypes to Define the Props You Expect"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403616e",
|
||||
"Access Props Using this.props"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403616f",
|
||||
"Review Using Props with Stateless Functional Components"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036170",
|
||||
"Create a Stateful Component"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036171",
|
||||
"Render State in the User Interface"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036172",
|
||||
"Render State in the User Interface Another Way"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036173",
|
||||
"Set State with this.setState"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036174",
|
||||
"Bind 'this' to a Class Method"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036176",
|
||||
"Use State to Toggle an Element"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036177",
|
||||
"Write a Simple Counter"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036178",
|
||||
"Create a Controlled Input"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036179",
|
||||
"Create a Controlled Form"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403617a",
|
||||
"Pass State as Props to Child Components"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403617b",
|
||||
"Pass a Callback as Props"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403617c",
|
||||
"Use the Lifecycle Method componentWillMount"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403617d",
|
||||
"Use the Lifecycle Method componentDidMount"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403617e",
|
||||
"Add Event Listeners"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403617f",
|
||||
"Manage Updates with Lifecycle Methods"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036180",
|
||||
"Optimize Re-Renders with shouldComponentUpdate"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036181",
|
||||
"Introducing Inline Styles"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036182",
|
||||
"Add Inline Styles in React"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036183",
|
||||
"Use Advanced JavaScript in React Render Method"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036184",
|
||||
"Render with an If-Else Condition"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036185",
|
||||
"Use && for a More Concise Conditional"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036187",
|
||||
"Use a Ternary Expression for Conditional Rendering"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036188",
|
||||
"Render Conditionally from Props"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036189",
|
||||
"Change Inline CSS Conditionally Based on Component State"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403618a",
|
||||
"Use Array.map() to Dynamically Render Elements"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403618b",
|
||||
"Give Sibling Elements a Unique Key Attribute"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403618c",
|
||||
"Use Array.filter() to Dynamically Filter an Array"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403618d",
|
||||
"Render React on the Server with renderToString"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "03-front-end-libraries/react.json"
|
||||
}
|
89
curriculum/challenges/_meta/redux/meta.json
Normal file
89
curriculum/challenges/_meta/redux/meta.json
Normal file
@ -0,0 +1,89 @@
|
||||
{
|
||||
"name": "Redux",
|
||||
"dashedName": "redux",
|
||||
"order": 6,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [
|
||||
{
|
||||
"src": "https://cdnjs.cloudflare.com/ajax/libs/redux/3.7.2/redux.min.js"
|
||||
},
|
||||
{
|
||||
"src": "https://cdnjs.cloudflare.com/ajax/libs/redux-thunk/2.2.0/redux-thunk.min.js"
|
||||
}
|
||||
],
|
||||
"superBlock": "front-end-libraries",
|
||||
"superOrder": 3,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"5a24c314108439a4d403614b",
|
||||
"Create a Redux Store"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403614c",
|
||||
"Get State from the Redux Store"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403614d",
|
||||
"Define a Redux Action"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403614e",
|
||||
"Define an Action Creator"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403614f",
|
||||
"Dispatch an Action Event"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036150",
|
||||
"Handle an Action in the Store"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036151",
|
||||
"Use a Switch Statement to Handle Multiple Actions"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036152",
|
||||
"Use const for Action Types"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036153",
|
||||
"Register a Store Listener"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036154",
|
||||
"Combine Multiple Reducers"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036155",
|
||||
"Send Action Data to the Store"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036156",
|
||||
"Use Middleware to Handle Asynchronous Actions"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036157",
|
||||
"Write a Counter with Redux"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036158",
|
||||
"Never Mutate State"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d4036159",
|
||||
"Use the Spread Operator on Arrays"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403615a",
|
||||
"Remove an Item from an Array"
|
||||
],
|
||||
[
|
||||
"5a24c314108439a4d403615b",
|
||||
"Copy an Object with Object.assign"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "03-front-end-libraries/redux.json"
|
||||
}
|
142
curriculum/challenges/_meta/regular-expressions/meta.json
Normal file
142
curriculum/challenges/_meta/regular-expressions/meta.json
Normal file
@ -0,0 +1,142 @@
|
||||
{
|
||||
"name": "Regular Expressions",
|
||||
"dashedName": "regular-expressions",
|
||||
"order": 3,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "javascript-algorithms-and-data-structures",
|
||||
"superOrder": 2,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d7db3367417b2b2512b8e",
|
||||
"Using the Test Method"
|
||||
],
|
||||
[
|
||||
"587d7db3367417b2b2512b8f",
|
||||
"Match Literal Strings"
|
||||
],
|
||||
[
|
||||
"587d7db4367417b2b2512b90",
|
||||
"Match a Literal String with Different Possibilities"
|
||||
],
|
||||
[
|
||||
"587d7db4367417b2b2512b91",
|
||||
"Ignore Case While Matching"
|
||||
],
|
||||
[
|
||||
"587d7db4367417b2b2512b92",
|
||||
"Extract Matches"
|
||||
],
|
||||
[
|
||||
"587d7db4367417b2b2512b93",
|
||||
"Find More Than the First Match"
|
||||
],
|
||||
[
|
||||
"587d7db5367417b2b2512b94",
|
||||
"Match Anything with Wildcard Period"
|
||||
],
|
||||
[
|
||||
"587d7db5367417b2b2512b95",
|
||||
"Match Single Character with Multiple Possibilities"
|
||||
],
|
||||
[
|
||||
"587d7db5367417b2b2512b96",
|
||||
"Match Letters of the Alphabet"
|
||||
],
|
||||
[
|
||||
"587d7db5367417b2b2512b97",
|
||||
"Match Numbers and Letters of the Alphabet"
|
||||
],
|
||||
[
|
||||
"587d7db6367417b2b2512b98",
|
||||
"Match Single Characters Not Specified"
|
||||
],
|
||||
[
|
||||
"587d7db6367417b2b2512b99",
|
||||
"Match Characters that Occur One or More Times"
|
||||
],
|
||||
[
|
||||
"587d7db6367417b2b2512b9a",
|
||||
"Match Characters that Occur Zero or More Times"
|
||||
],
|
||||
[
|
||||
"587d7db6367417b2b2512b9b",
|
||||
"Find Characters with Lazy Matching"
|
||||
],
|
||||
[
|
||||
"587d7db7367417b2b2512b9c",
|
||||
"Find One or More Criminals in a Hunt"
|
||||
],
|
||||
[
|
||||
"587d7db7367417b2b2512b9d",
|
||||
"Match Beginning String Patterns"
|
||||
],
|
||||
[
|
||||
"587d7db7367417b2b2512b9e",
|
||||
"Match Ending String Patterns"
|
||||
],
|
||||
[
|
||||
"587d7db7367417b2b2512b9f",
|
||||
"Match All Letters and Numbers"
|
||||
],
|
||||
[
|
||||
"587d7db8367417b2b2512ba0",
|
||||
"Match Everything But Letters and Numbers"
|
||||
],
|
||||
[
|
||||
"5d712346c441eddfaeb5bdef",
|
||||
"Match All Numbers"
|
||||
],
|
||||
[
|
||||
"587d7db8367417b2b2512ba1",
|
||||
"Match All Non-Numbers"
|
||||
],
|
||||
[
|
||||
"587d7db8367417b2b2512ba2",
|
||||
"Restrict Possible Usernames"
|
||||
],
|
||||
[
|
||||
"587d7db8367417b2b2512ba3",
|
||||
"Match Whitespace"
|
||||
],
|
||||
[
|
||||
"587d7db9367417b2b2512ba4",
|
||||
"Match Non-Whitespace Characters"
|
||||
],
|
||||
[
|
||||
"587d7db9367417b2b2512ba5",
|
||||
"Specify Upper and Lower Number of Matches"
|
||||
],
|
||||
[
|
||||
"587d7db9367417b2b2512ba6",
|
||||
"Specify Only the Lower Number of Matches"
|
||||
],
|
||||
[
|
||||
"587d7db9367417b2b2512ba7",
|
||||
"Specify Exact Number of Matches"
|
||||
],
|
||||
[
|
||||
"587d7dba367417b2b2512ba8",
|
||||
"Check for All or None"
|
||||
],
|
||||
[
|
||||
"587d7dba367417b2b2512ba9",
|
||||
"Positive and Negative Lookahead"
|
||||
],
|
||||
[
|
||||
"587d7dbb367417b2b2512baa",
|
||||
"Reuse Patterns Using Capture Groups"
|
||||
],
|
||||
[
|
||||
"587d7dbb367417b2b2512bab",
|
||||
"Use Capture Groups to Search and Replace"
|
||||
],
|
||||
[
|
||||
"587d7dbb367417b2b2512bac",
|
||||
"Remove Whitespace from Start and End"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "02-javascript-algorithms-and-data-structures/regular-expressions.json"
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
{
|
||||
"name": "Responsive Web Design Certificate",
|
||||
"dashedName": "responsive-web-design-certificate",
|
||||
"order": 1,
|
||||
"time": "",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "certificates",
|
||||
"superOrder": 9,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"561add10cb82ac38a17513bc",
|
||||
"Responsive Web Design Certificate"
|
||||
]
|
||||
],
|
||||
"isPrivate": true,
|
||||
"fileName": "09-certificates/responsive-web-design-certificate.json"
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
{
|
||||
"name": "Responsive Web Design Principles",
|
||||
"dashedName": "responsive-web-design-principles",
|
||||
"order": 4,
|
||||
"time": "1 hour",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "responsive-web-design",
|
||||
"superOrder": 1,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d78b0367417b2b2512b08",
|
||||
"Create a Media Query"
|
||||
],
|
||||
[
|
||||
"587d78b1367417b2b2512b09",
|
||||
"Make an Image Responsive"
|
||||
],
|
||||
[
|
||||
"587d78b1367417b2b2512b0a",
|
||||
"Use a Retina Image for Higher Resolution Displays"
|
||||
],
|
||||
[
|
||||
"587d78b1367417b2b2512b0c",
|
||||
"Make Typography Responsive"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "01-responsive-web-design/responsive-web-design.json"
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
{
|
||||
"name": "Responsive Web Design Projects",
|
||||
"dashedName": "responsive-web-design-projects",
|
||||
"order": 7,
|
||||
"time": "150 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "responsive-web-design",
|
||||
"superOrder": 1,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"bd7158d8c442eddfaeb5bd18",
|
||||
"Build a Tribute Page"
|
||||
],
|
||||
[
|
||||
"587d78af367417b2b2512b03",
|
||||
"Build a Survey Form"
|
||||
],
|
||||
[
|
||||
"587d78af367417b2b2512b04",
|
||||
"Build a Product Landing Page"
|
||||
],
|
||||
[
|
||||
"587d78b0367417b2b2512b05",
|
||||
"Build a Technical Documentation Page"
|
||||
],
|
||||
[
|
||||
"bd7158d8c242eddfaeb5bd13",
|
||||
"Build a Personal Portfolio Webpage"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "01-responsive-web-design/responsive-web-design-projects.json"
|
||||
}
|
363
curriculum/challenges/_meta/rosetta-code/meta.json
Normal file
363
curriculum/challenges/_meta/rosetta-code/meta.json
Normal file
@ -0,0 +1,363 @@
|
||||
{
|
||||
"name": "Rosetta Code",
|
||||
"dashedName": "rosetta-code",
|
||||
"order": 5,
|
||||
"time": "",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "coding-interview-prep",
|
||||
"superOrder": 8,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"594810f028c0303b75339acb",
|
||||
"100 doors"
|
||||
],
|
||||
[
|
||||
"5951e88f64ebf159166a1176",
|
||||
"24 game"
|
||||
],
|
||||
[
|
||||
"5949b579404977fbaefcd736",
|
||||
"9 billion names of God the integer"
|
||||
],
|
||||
[
|
||||
"594810f028c0303b75339acc",
|
||||
"ABC Problem"
|
||||
],
|
||||
[
|
||||
"594810f028c0303b75339acd",
|
||||
"Abundant, deficient and perfect number classifications"
|
||||
],
|
||||
[
|
||||
"594810f028c0303b75339ace",
|
||||
"Accumulator factory"
|
||||
],
|
||||
[
|
||||
"594810f028c0303b75339acf",
|
||||
"Ackermann function"
|
||||
],
|
||||
[
|
||||
"594810f028c0303b75339ad0",
|
||||
"Align columns"
|
||||
],
|
||||
[
|
||||
"5949b579404977fbaefcd737",
|
||||
"Amicable pairs"
|
||||
],
|
||||
[
|
||||
"594d8d0ab97724821379b1e6",
|
||||
"Averages-Mode"
|
||||
],
|
||||
[
|
||||
"594d966a1467eb84194f0086",
|
||||
"Averages-Pythagorean means"
|
||||
],
|
||||
[
|
||||
"594da033de4190850b893874",
|
||||
"Averages-Root mean square"
|
||||
],
|
||||
[
|
||||
"594db4d0dedb4c06a2a4cefd",
|
||||
"Babbage problem"
|
||||
],
|
||||
[
|
||||
"594dc6c729e5700999302b45",
|
||||
"Balanced brackets"
|
||||
],
|
||||
[
|
||||
"5951815dd895584b06884620",
|
||||
"Circles of given radius through two points"
|
||||
],
|
||||
[
|
||||
"5951a53863c8a34f02bf1bdc",
|
||||
"Closest-pair problem"
|
||||
],
|
||||
[
|
||||
"5958469238c0d8d2632f46db",
|
||||
"Combinations"
|
||||
],
|
||||
[
|
||||
"596e414344c3b2872167f0fe",
|
||||
"Comma quibbling"
|
||||
],
|
||||
[
|
||||
"596e457071c35c882915b3e4",
|
||||
"Compare a list of strings"
|
||||
],
|
||||
[
|
||||
"596fd036dc1ab896c5db98b1",
|
||||
"Convert seconds to compound duration"
|
||||
],
|
||||
[
|
||||
"596fda99c69f779975a1b67d",
|
||||
"Count occurrences of a substring"
|
||||
],
|
||||
[
|
||||
"59713bd26bdeb8a594fb9413",
|
||||
"Count the coins"
|
||||
],
|
||||
[
|
||||
"59713da0a428c1a62d7db430",
|
||||
"Cramer's rule"
|
||||
],
|
||||
[
|
||||
"59669d08d75b60482359409f",
|
||||
"Date format"
|
||||
],
|
||||
[
|
||||
"5966c21cf732a95f1b67dd28",
|
||||
"Date manipulation"
|
||||
],
|
||||
[
|
||||
"5966f99c45e8976909a85575",
|
||||
"Day of the week"
|
||||
],
|
||||
[
|
||||
"59694356a6e7011f7f1c5f4e",
|
||||
"Deal cards for FreeCell"
|
||||
],
|
||||
[
|
||||
"596a8888ab7c01048de257d5",
|
||||
"Deepcopy"
|
||||
],
|
||||
[
|
||||
"597089c87eec450c68aa1643",
|
||||
"Define a primitive data type"
|
||||
],
|
||||
[
|
||||
"59f40b17e79dbf1ab720ed7a",
|
||||
"Department Numbers"
|
||||
],
|
||||
[
|
||||
"59f4eafba0343628bb682785",
|
||||
"Discordian date"
|
||||
],
|
||||
[
|
||||
"599c333915e0ea32d04d4bec",
|
||||
"Element-wise operations"
|
||||
],
|
||||
[
|
||||
"599d0ba974141b0f508b37d5",
|
||||
"Emirp primes"
|
||||
],
|
||||
[
|
||||
"599d15309e88c813a40baf58",
|
||||
"Entropy"
|
||||
],
|
||||
[
|
||||
"5987fd532b954e0f21b5d3f6",
|
||||
"Equilibrium index"
|
||||
],
|
||||
[
|
||||
"599d1566a02b571412643b84",
|
||||
"Ethiopian multiplication"
|
||||
],
|
||||
[
|
||||
"59880443fb36441083c6c20e",
|
||||
"Euler method"
|
||||
],
|
||||
[
|
||||
"598de241872ef8353c58a7a2",
|
||||
"Evaluate binomial coefficients"
|
||||
],
|
||||
[
|
||||
"59e09e6d412c5939baa02d16",
|
||||
"Execute a Markov algorithm"
|
||||
],
|
||||
[
|
||||
"59e0a8df964e4540d5abe599",
|
||||
"Execute Brain****"
|
||||
],
|
||||
[
|
||||
"598ee8b91b410510ae82efef",
|
||||
"Extensible prime generator"
|
||||
],
|
||||
[
|
||||
"597b2b2a2702b44414742771",
|
||||
"Factorial"
|
||||
],
|
||||
[
|
||||
"598eea87e5cf4b116c3ff81a",
|
||||
"Factors of a Mersenne number"
|
||||
],
|
||||
[
|
||||
"597f1e7fbc206f0e9ba95dc4",
|
||||
"Factors of an integer"
|
||||
],
|
||||
[
|
||||
"59c3ec9f15068017c96eb8a3",
|
||||
"Farey sequence"
|
||||
],
|
||||
[
|
||||
"598eef80ba501f1268170e1e",
|
||||
"Fibonacci n-step number sequences"
|
||||
],
|
||||
[
|
||||
"597f24c1dda4e70f53c79c81",
|
||||
"Fibonacci sequence"
|
||||
],
|
||||
[
|
||||
"5992e222d397f00d21122931",
|
||||
"Fibonacci word"
|
||||
],
|
||||
[
|
||||
"5a7dad05be01840e1778a0d1",
|
||||
"Fractran"
|
||||
],
|
||||
[
|
||||
"5a23c84252665b21eecc7e76",
|
||||
"Gamma function"
|
||||
],
|
||||
[
|
||||
"5a23c84252665b21eecc7e77",
|
||||
"Gaussian elimination"
|
||||
],
|
||||
[
|
||||
"5a23c84252665b21eecc7e78",
|
||||
"General FizzBuzz"
|
||||
],
|
||||
[
|
||||
"5a23c84252665b21eecc7e7a",
|
||||
"Generate lower case ASCII alphabet"
|
||||
],
|
||||
[
|
||||
"5a23c84252665b21eecc7e7b",
|
||||
"GeneratorExponential"
|
||||
],
|
||||
[
|
||||
"5a23c84252665b21eecc7e80",
|
||||
"Gray code"
|
||||
],
|
||||
[
|
||||
"5a23c84252665b21eecc7e82",
|
||||
"Greatest common divisor"
|
||||
],
|
||||
[
|
||||
"5a23c84252665b21eecc7e84",
|
||||
"Greatest subsequential sum"
|
||||
],
|
||||
[
|
||||
"595608ff8bcd7a50bd490181",
|
||||
"Hailstone sequence"
|
||||
],
|
||||
[
|
||||
"594810f028c0303b75339ad1",
|
||||
"Happy numbers"
|
||||
],
|
||||
[
|
||||
"595668ca4cfe1af2fb9818d4",
|
||||
"Harshad or Niven series"
|
||||
],
|
||||
[
|
||||
"595671d4d2cdc305f0d5b36f",
|
||||
"Hash from two arrays"
|
||||
],
|
||||
[
|
||||
"5956795bc9e2c415eb244de1",
|
||||
"Hash join"
|
||||
],
|
||||
[
|
||||
"595b98f8b5a2245e243aa831",
|
||||
"Heronian triangles"
|
||||
],
|
||||
[
|
||||
"59622f89e4e137560018a40e",
|
||||
"Hofstadter Figure-Figure sequences"
|
||||
],
|
||||
[
|
||||
"59637c4d89f6786115efd814",
|
||||
"Hofstadter Q sequence"
|
||||
],
|
||||
[
|
||||
"5a23c84252665b21eecc7eb0",
|
||||
"I before E except after C"
|
||||
],
|
||||
[
|
||||
"5a23c84252665b21eecc7eaf",
|
||||
"IBAN"
|
||||
],
|
||||
[
|
||||
"5a23c84252665b21eecc7eb1",
|
||||
"Identity matrix"
|
||||
],
|
||||
[
|
||||
"5a23c84252665b21eecc7ec1",
|
||||
"Iterated digits squaring"
|
||||
],
|
||||
[
|
||||
"5a23c84252665b21eecc7ec2",
|
||||
"Jaro distance"
|
||||
],
|
||||
[
|
||||
"5a23c84252665b21eecc7ec4",
|
||||
"JortSort"
|
||||
],
|
||||
[
|
||||
"5a23c84252665b21eecc7ec5",
|
||||
"Josephus problem"
|
||||
],
|
||||
[
|
||||
"59da22823d04c95919d46269",
|
||||
"Sailors, coconuts and a monkey problem"
|
||||
],
|
||||
[
|
||||
"59d9c6bc214c613ba73ff012",
|
||||
"SEDOLs"
|
||||
],
|
||||
[
|
||||
"59667989bf71cf555dd5d2ff",
|
||||
"S-Expressions"
|
||||
],
|
||||
[
|
||||
"594ecc0d9a8cf816e3340187",
|
||||
"Taxicab numbers"
|
||||
],
|
||||
[
|
||||
"594faaab4e2a8626833e9c3d",
|
||||
"Tokenize a string with escaping"
|
||||
],
|
||||
[
|
||||
"594fa2746886f41f7d8bf225",
|
||||
"Topological sort"
|
||||
],
|
||||
[
|
||||
"595011cba5a81735713873bd",
|
||||
"Top rank per group"
|
||||
],
|
||||
[
|
||||
"5951ed8945deab770972ae56",
|
||||
"Towers of Hanoi"
|
||||
],
|
||||
[
|
||||
"594810f028c0303b75339ad2",
|
||||
"Vector cross product"
|
||||
],
|
||||
[
|
||||
"594810f028c0303b75339ad3",
|
||||
"Vector dot product"
|
||||
],
|
||||
[
|
||||
"594810f028c0303b75339ad4",
|
||||
"Word wrap"
|
||||
],
|
||||
[
|
||||
"594810f028c0303b75339ad5",
|
||||
"Y combinator"
|
||||
],
|
||||
[
|
||||
"594810f028c0303b75339ad6",
|
||||
"Zeckendorf number representation"
|
||||
],
|
||||
[
|
||||
"594810f028c0303b75339ad7",
|
||||
"Zhang-Suen thinning algorithm"
|
||||
],
|
||||
[
|
||||
"594810f028c0303b75339ad8",
|
||||
"Zig-zag matrix"
|
||||
]
|
||||
],
|
||||
"helpRoom": "",
|
||||
"nChallenges": 437,
|
||||
"fileName": "08-coding-interview-prep/rosetta-code.json"
|
||||
}
|
50
curriculum/challenges/_meta/sass/meta.json
Normal file
50
curriculum/challenges/_meta/sass/meta.json
Normal file
@ -0,0 +1,50 @@
|
||||
{
|
||||
"name": "Sass",
|
||||
"dashedName": "sass",
|
||||
"order": 4,
|
||||
"time": "5 hours",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "front-end-libraries",
|
||||
"superOrder": 3,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"587d7dbd367417b2b2512bb4",
|
||||
"Store Data with Sass Variables"
|
||||
],
|
||||
[
|
||||
"587d7dbd367417b2b2512bb5",
|
||||
"Nest CSS with Sass"
|
||||
],
|
||||
[
|
||||
"587d7dbd367417b2b2512bb6",
|
||||
"Create Reusable CSS with Mixins"
|
||||
],
|
||||
[
|
||||
"587d7dbe367417b2b2512bb8",
|
||||
"Use @if and @else to Add Logic To Your Styles"
|
||||
],
|
||||
[
|
||||
"587d7dbe367417b2b2512bb9",
|
||||
"Use @for to Create a Sass Loop"
|
||||
],
|
||||
[
|
||||
"587d7dbf367417b2b2512bba",
|
||||
"Use @each to Map Over Items in a List"
|
||||
],
|
||||
[
|
||||
"587d7dbf367417b2b2512bbb",
|
||||
"Apply a Style Until a Condition is Met with @while"
|
||||
],
|
||||
[
|
||||
"587d7dbf367417b2b2512bbc",
|
||||
"Split Your Styles into Smaller Chunks with Partials"
|
||||
],
|
||||
[
|
||||
"587d7fa5367417b2b2512bbd",
|
||||
"Extend One Set of CSS Styles to Another Element"
|
||||
]
|
||||
],
|
||||
"helpRoom": "Help",
|
||||
"fileName": "03-front-end-libraries/sass.json"
|
||||
}
|
94
curriculum/challenges/_meta/take-home-projects/meta.json
Normal file
94
curriculum/challenges/_meta/take-home-projects/meta.json
Normal file
@ -0,0 +1,94 @@
|
||||
{
|
||||
"name": "Take Home Projects",
|
||||
"dashedName": "take-home-projects",
|
||||
"order": 4,
|
||||
"time": "",
|
||||
"template": "",
|
||||
"required": [],
|
||||
"superBlock": "coding-interview-prep",
|
||||
"superOrder": 8,
|
||||
"challengeOrder": [
|
||||
[
|
||||
"bd7158d8c442eddfaeb5bd10",
|
||||
"Show the Local Weather"
|
||||
],
|
||||
[
|
||||
"bd7158d8c442eddfaeb5bd19",
|
||||
"Build a Wikipedia Viewer"
|
||||
],
|
||||
[
|
||||
"bd7158d8c442eddfaeb5bd1f",
|
||||
"Use the Twitch JSON API"
|
||||
],
|
||||
[
|
||||
"bd7158d8c443edefaeb5bdee",
|
||||
"Build an Image Search Abstraction Layer"
|
||||
],
|
||||
[
|
||||
"bd7158d8c442eedfaeb5bd1c",
|
||||
"Build a Tic Tac Toe Game"
|
||||
],
|
||||
[
|
||||
"bd7158d8c442eddfaeb5bd1c",
|
||||
"Build a Simon Game"
|
||||
],
|
||||
[
|
||||
"bd7156d8c242eddfaeb5bd13",
|
||||
"Build a Camper Leaderboard"
|
||||
],
|
||||
[
|
||||
"bd7155d8c242eddfaeb5bd13",
|
||||
"Build a Recipe Box"
|
||||
],
|
||||
[
|
||||
"bd7154d8c242eddfaeb5bd13",
|
||||
"Build the Game of Life"
|
||||
],
|
||||
[
|
||||
"bd7153d8c242eddfaeb5bd13",
|
||||
"Build a Roguelike Dungeon Crawler Game"
|
||||
],
|
||||
[
|
||||
"bd7150d8c442eddfafb5bd1c",
|
||||
"P2P Video Chat Application"
|
||||
],
|
||||
[
|
||||
"bd7198d8c242eddfaeb5bd13",
|
||||
"Show National Contiguity with a Force Directed Graph"
|
||||
],
|
||||
[
|
||||
"bd7108d8c242eddfaeb5bd13",
|
||||
"Map Data Across the Globe"
|
||||
],
|
||||
[
|
||||
"bd7158d8c443eddfaeb5bd0f",
|
||||
"Manage a Book Trading Club"
|
||||
],
|
||||
[
|
||||
"bd7158d8c443eddfaeb5bdee",
|
||||
"Build a Pinterest Clone"
|
||||
],
|
||||
[
|
||||
"bd7158d8c443eddfaeb5bdff",
|
||||
"Build a Nightlife Coordination App"
|
||||
],
|
||||
[
|
||||
"bd7158d8c443eddfaeb5bd0e",
|
||||
"Chart the Stock Market"
|
||||
],
|
||||
[
|
||||
"bd7158d8c443eddfaeb5bdef",
|
||||
"Build a Voting App"
|
||||
],
|
||||
[
|
||||
"5a4b7fcdb66f799f199e11db",
|
||||
"Build a Pong Game"
|
||||
],
|
||||
[
|
||||
"5a5d02bd919fcf9ca8cf46cb",
|
||||
"Build a Light-Bright App"
|
||||
]
|
||||
],
|
||||
"helpRoom": "HelpFrontEnd",
|
||||
"fileName": "08-coding-interview-prep/take-home-projects.json"
|
||||
}
|
Reference in New Issue
Block a user