diff --git a/seed/challenges/advanced-bonfires.json b/seed/challenges/advanced-bonfires.json
index fff06546dd..db81a04400 100644
--- a/seed/challenges/advanced-bonfires.json
+++ b/seed/challenges/advanced-bonfires.json
@@ -1,6 +1,6 @@
{
"name": "Advanced Algorithm Scripting",
- "order": 0.013,
+ "order": 15,
"challenges": [
{
"id": "aff0395860f5d3034dc0bfc9",
diff --git a/seed/challenges/angularjs.json b/seed/challenges/angularjs.json
index fcdc14cf3a..92c85e751b 100644
--- a/seed/challenges/angularjs.json
+++ b/seed/challenges/angularjs.json
@@ -1,6 +1,6 @@
{
"name": "AngularJS",
- "order": 0.014,
+ "order": 16,
"challenges": [
{
"id": "bd7154d8c441eddfaeb5bdef",
diff --git a/seed/challenges/automated-testing-and-debugging.json b/seed/challenges/automated-testing-and-debugging.json
index 294739a6ca..b5ab25c2f9 100644
--- a/seed/challenges/automated-testing-and-debugging.json
+++ b/seed/challenges/automated-testing-and-debugging.json
@@ -1,6 +1,6 @@
{
"name": "Automated Testing and Debugging",
- "order": 0.012,
+ "order": 14,
"challenges": [
{
"id":"cf1111c1c16feddfaeb6bdef",
diff --git a/seed/challenges/basejumps.json b/seed/challenges/basejumps.json
index bfa6d56d1c..c0dc0a0ba3 100644
--- a/seed/challenges/basejumps.json
+++ b/seed/challenges/basejumps.json
@@ -1,6 +1,6 @@
{
"name": "Full Stack JavaScript Projects",
- "order": 0.019,
+ "order": 20,
"challenges": [
{
"id": "bd7158d8c443eddfaeb5bcef",
diff --git a/seed/challenges/basic-bonfires.json b/seed/challenges/basic-bonfires.json
index c8fbdd1920..931c157ce1 100644
--- a/seed/challenges/basic-bonfires.json
+++ b/seed/challenges/basic-bonfires.json
@@ -1,6 +1,6 @@
{
"name": "Basic Algorithm Scripting",
- "order": 0.007,
+ "order": 7,
"challenges": [
{
"id": "ad7123c8c441eddfaeb5bdef",
diff --git a/seed/challenges/basic-javascript.json b/seed/challenges/basic-javascript.json
index 424df615db..c10af0def1 100644
--- a/seed/challenges/basic-javascript.json
+++ b/seed/challenges/basic-javascript.json
@@ -1,6 +1,6 @@
{
"name": "Basic JavaScript",
- "order": 0.005,
+ "order": 5,
"challenges": [
{
"id":"bd7123c9c441eddfaeb4bdef",
diff --git a/seed/challenges/basic-ziplines.json b/seed/challenges/basic-ziplines.json
index 0e51533b87..cf2ac272f6 100644
--- a/seed/challenges/basic-ziplines.json
+++ b/seed/challenges/basic-ziplines.json
@@ -1,10 +1,11 @@
{
"name": "Basic Front End Development Projects",
- "order": 0.008,
+ "order": 8,
"challenges": [
{
"id": "bd7158d8c442eddfbeb5bd1f",
"title": "Get Set for Ziplines",
+ "difficulty": 1.00,
"challengeSeed": ["125658022"],
"description": [
"Now you're ready to start our Zipline challenges. These front-end development challenges will give you many opportunities to apply the HTML, CSS, jQuery and JavaScript you've learned to build static (database-less) applications.",
@@ -52,6 +53,7 @@
{
"id": "bd7158d8c242eddfaeb5bd13",
"title": "Build a Personal Portfolio Webpage",
+ "difficulty": 1.01,
"challengeSeed": ["133315782"],
"description": [
"Objective: Build a CodePen.io app that successfully reverse-engineers this: http://codepen.io/ThiagoFerreir4/full/eNMxEp.",
@@ -105,6 +107,7 @@
{
"id": "bd7158d8c442eddfaeb5bd13",
"title": "Build a Random Quote Machine",
+ "difficulty": 1.02,
"challengeSeed": ["126415122"],
"description": [
"Objective: Build a CodePen.io app that successfully reverse-engineers this: http://codepen.io/AdventureBear/full/vEoVMw.",
@@ -145,51 +148,6 @@
"namePt": "",
"descriptionPt": []
},
- {
- "id": "bd7158d8c442eddfaeb5bd10",
- "title": "Show the Local Weather",
- "challengeSeed": ["126415127"],
- "description": [
- "Objective: Build a CodePen.io app that successfully reverse-engineers this: http://codepen.io/AdventureBear/full/yNBJRj.",
- "Rule #1: Don't look at the example project's code on CodePen. Figure it out for yourself.",
- "Rule #2: You may use whichever libraries or APIs you need.",
- "Rule #3: Reverse engineer the example project's functionality, and also feel free to personalize it.",
- "Here are the user stories you must enable, and optional bonus user stories:",
- "User Story: As a user, I can see the weather in my current location.",
- "Bonus User Story: As a user, I can see an icon depending on the weather.",
- "Bonus User Story: As a user, I see a different background image (e.g. snowy mountain, hot desert) depending on the weather.",
- "Bonus User Story: As a user, I can push a button to toggle between Fahrenheit and Celsius.",
- "Remember to use Read-Search-Ask if you get stuck.",
- "When you are finished, click the \"I've completed this challenge\" button and include a link to your CodePen. If you pair programmed, you should also include the Free Code Camp username of your pair.",
- "If you'd like immediate feedback on your project from fellow campers, click this button and paste in a link to your CodePen project.
Click here then add your link to your tweet's text"
- ],
- "type": "zipline",
- "challengeType": 3,
- "tests": [],
- "nameCn": "",
- "descriptionCn": [],
- "nameFr": "",
- "descriptionFr": [],
- "nameRu": "Покажите местную погоду",
- "descriptionRu": [
- "Задание: Создайте CodePen.io который успешно копирует вот этот: http://codepen.io/AdventureBear/full/yNBJRj.",
- "Правило #1: Не подсматривайте код приведенного на CodePen примера. Напишите его самостоятельно.",
- "Правило #2: Можете использовать любые библиотеки или API, которые потребуются.",
- "Правило #3: Воссоздайте функционал приведенного примера и не стесняйтесь добавить что-нибудь от себя.",
- "Реализуйте следующие пользовательские истории, сделайте также бонусные по желанию:",
- "Пользовательская история: В качестве пользователя, я могу узнать погоду с учетом моего текущего местоположения.",
- "Бонусная пользовательская история: В качестве пользователя, я могу в зависимости от погоды видеть различные температурные значки.",
- "Бонусная пользовательская история: В качестве пользователя, я могу в зависимости от погоды видеть различные фоновые изображения (снежные горы, знойная пустыня).",
- "Бонусная пользовательская история: В качестве пользователя, я могу нажать на кнопку чтобы переключится между градусами по Цельсию или по Фаренгейту.",
- "Если что-то не получается, воспользуйтесь Read-Search-Ask.",
- "Когда выполните задание кликните кнопку \"I've completed this challenge\" и добавьте ссылку на ваш CodePen. Если вы программировали с кем-то в паре, также добавьте имя вашего напарника.",
- "Если вы хотите получить немедленную оценку вашего проекта, нажмите эту кнопку и добавьте ссылку на ваш CodePen. В противном случае мы проверим его перед тем как вы приступите к проектам для некоммерческих организаций.
Click here then add your link to your tweet's text"
- ],
- "nameEs": "",
- "descriptionEs": [],
- "namePt": "",
- "descriptionPt": []
- },
{
"id": "bd7158d8c442eddfaeb5bd0f",
"title": "Build a Pomodoro Clock",
@@ -234,23 +192,18 @@
"descriptionPt": []
},
{
- "id": "bd7158d8c442eddfaeb5bd1f",
- "title": "Use the Twitch.tv JSON API",
- "challengeSeed": ["126411564"],
+ "id": "bd7158d8c442eddfaeb5bd17",
+ "title": "Build a JavaScript Calculator",
+ "challengeSeed": ["126411565"],
"description": [
- "Objective: Build a CodePen.io app that successfully reverse-engineers this: http://codepen.io/GeoffStorbeck/full/GJKRxZ.",
+ "Objective: Build a CodePen.io app that successfully reverse-engineers this: http://codepen.io/GeoffStorbeck/full/zxgaqw.",
"Rule #1: Don't look at the example project's code on CodePen. Figure it out for yourself.",
"Rule #2: You may use whichever libraries or APIs you need.",
"Rule #3: Reverse engineer the example project's functionality, and also feel free to personalize it.",
"Here are the user stories you must enable, and optional bonus user stories:",
- "User Story: As a user, I can see whether Free Code Camp is currently streaming on Twitch.tv.",
- "User Story: As a user, I can click the status output and be sent directly to the Free Code Camp's Twitch.tv channel.",
- "User Story: As a user, if Free Code Camp is streaming, I can see additional details about what they are streaming.",
- "Bonus User Story: As a user, I can search through the streams listed.",
- "Bonus User Story: As a user, I will see a placeholder notification if a streamer has closed their Twitch account. You can verify this works by adding brunofin and comster404 to your array of Twitch streamers.",
- "Hint: Here's an example call to Twitch.tv's JSON API: https://api.twitch.tv/kraken/streams/freecodecamp
.",
- "Hint: The relevant documentation about this API call is here: https://github.com/justintv/Twitch-API/blob/master/v3_resources/streams.md#get-streamschannel.",
- "Hint: Here's an array of the Twitch.tv usernames of people who regularly stream coding: [\"freecodecamp\", \"storbeck\", \"terakilobyte\", \"habathcx\",\"RobotCaleb\",\"thomasballinger\",\"noobs2ninjas\",\"beohoff\"]
",
+ "User Story: As a user, I can add, subtract, multiply and divide two numbers.",
+ "Bonus User Story: I can clear the input field with a clear button.",
+ "Bonus User Story: I can keep chaining mathematical operations together until I hit the clear button, and the calculator will tell me the correct output.",
"Remember to use Read-Search-Ask if you get stuck.",
"When you are finished, click the \"I've completed this challenge\" button and include a link to your CodePen. If you pair programmed, you should also include the Free Code Camp username of your pair.",
"If you'd like immediate feedback on your project from fellow campers, click this button and paste in a link to your CodePen project.
Click here then add your link to your tweet's text"
@@ -262,25 +215,8 @@
"descriptionCn": [],
"nameFr": "",
"descriptionFr": [],
- "nameRu": "Используйте Twitch.tv JSON API",
- "descriptionRu": [
- "Задание: Создайте CodePen.io который успешно копирует вот этот: http://codepen.io/GeoffStorbeck/full/GJKRxZ.",
- "Правило #1: Не подсматривайте код приведенного на CodePen примера. Напишите его самостоятельно.",
- "Правило #2: Можете использовать любые библиотеки или API, которые потребуются.",
- "Правило #3: Воссоздайте функционал приведенного примера и не стесняйтесь добавить что-нибудь от себя.",
- "Реализуйте следующие пользовательские истории, сделайте также бонусные по желанию:",
- "Пользовательская история: В качестве пользователя, я могу увидеть идет ли в данный момент на Twitch.tv трансляция Free Code Camp.",
- "Пользовательская история: В качестве пользователя, я могу, кликнув на описание трансляции, перейти на канал Free Code Camp.",
- "Пользовательская история: В качестве пользователя, я могу видеть дополнительную информацию о текущей трансляции Free Code Camp.",
- "Бонусная пользовательская история: В качестве пользователя, я могу произвести поиск среди перечисленных каналов.",
- "Бонусная пользовательская история: В качестве пользователя, я могу видеть уведомление, если создатель канала закрыл свой аккаунт на Twitch.tv. Добавьте в массив имена пользователей brunofin и comster404, чтобы убедиться, что эта функция реализована правильно.",
- "Подсказка: Пример запроса к Twitch.tv JSON API: https://api.twitch.tv/kraken/streams/freecodecamp
.",
- "Подсказка: Документацию об этом запросе можно найти по ссылке: https://github.com/justintv/Twitch-API/blob/master/v3_resources/streams.md#get-streamschannel.",
- "Подсказка: В этом массиве приведены имена пользователей, которые регулярно пишут код онлайн: [\"freecodecamp\", \"storbeck\", \"terakilobyte\", \"habathcx\",\"RobotCaleb\",\"comster404\",\"brunofin\",\"thomasballinger\",\"noobs2ninjas\",\"beohoff\"]
",
- "Если что-то не получается, воспользуйтесь Read-Search-Ask.",
- "Когда выполните задание кликните кнопку \"I've completed this challenge\" и добавьте ссылку на ваш CodePen. Если вы программировали с кем-то в паре, также добавьте имя вашего напарника.",
- "Если вы хотите получить немедленную оценку вашего проекта, нажмите эту кнопку и добавьте ссылку на ваш CodePen. В противном случае мы проверим его перед тем как вы приступите к проектам для некоммерческих организаций.
Click here then add your link to your tweet's text"
- ],
+ "nameRu": "",
+ "descriptionRu": [],
"nameEs": "",
"descriptionEs": [],
"namePt": "",
diff --git a/seed/challenges/bootstrap.json b/seed/challenges/bootstrap.json
index 091c94446e..d405871390 100644
--- a/seed/challenges/bootstrap.json
+++ b/seed/challenges/bootstrap.json
@@ -1,6 +1,6 @@
{
"name": "Responsive Design with Bootstrap",
- "order": 0.003,
+ "order": 3,
"challenges": [
{
"id": "bad87fee1348bd9acde08712",
diff --git a/seed/challenges/front-end-development-certificate.json b/seed/challenges/front-end-development-certificate.json
new file mode 100644
index 0000000000..fa0bb1ce40
--- /dev/null
+++ b/seed/challenges/front-end-development-certificate.json
@@ -0,0 +1,226 @@
+{
+ "name": "Claim Your Front End Development Certificate",
+ "order": 12,
+ "challenges": [
+ {
+ "id": "561add10cb82ac38a17513be",
+ "title": "Claim Your Front End Development Certificate",
+ "difficulty": 0.00,
+ "challengeSeed": [],
+ "description": [
+ [
+ "http://i.imgur.com/RlEk2IF.jpg",
+ "a picture of Free Code Camp's 4 benefits: Get connected, Learn JavaScript, Build your Portfolio, Help nonprofits",
+ "Welcome to Free Code Camp. We're an open source community of busy people who learn to code and help nonprofits.",
+ ""
+ ]
+ ],
+ "type": "Waypoint",
+ "challengeType": 7,
+ "tests": [
+ {
+ "id": "ad7123c8c441eddfaeb5bdef",
+ "title": "Meet Bonfire"
+ },
+ {
+ "id": "a202eed8fc186c8434cb6d61",
+ "title": "Reverse a String"
+ },
+ {
+ "id": "a302f7aae1aa3152a5b413bc",
+ "title": "Factorialize a Number"
+ },
+ {
+ "id": "aaa48de84e1ecc7c742e1124",
+ "title": "Check for Palindromes"
+ },
+ {
+ "id": "a26cbbe9ad8655a977e1ceb5",
+ "title": "Find the Longest Word in a String"
+ },
+ {
+ "id": "ab6137d4e35944e21037b769",
+ "title": "Title Case a Sentence"
+ },
+ {
+ "id": "a789b3483989747d63b0e427",
+ "title": "Return Largest Numbers in Arrays"
+ },
+ {
+ "id": "acda2fb1324d9b0fa741e6b5",
+ "title": "Confirm the Ending"
+ },
+ {
+ "id": "afcc8d540bea9ea2669306b6",
+ "title": "Repeat a string repeat a string"
+ },
+ {
+ "id": "ac6993d51946422351508a41",
+ "title": "Truncate a string"
+ },
+ {
+ "id": "a9bd25c716030ec90084d8a1",
+ "title": "Chunky Monkey"
+ },
+ {
+ "id": "ab31c21b530c0dafa9e241ee",
+ "title": "Slasher Flick"
+ },
+ {
+ "id": "af2170cad53daa0770fabdea",
+ "title": "Mutations"
+ },
+ {
+ "id": "adf08ec01beb4f99fc7a68f2",
+ "title": "Falsy Bouncer"
+ },
+ {
+ "id": "a39963a4c10bc8b4d4f06d7e",
+ "title": "Seek and Destroy"
+ },
+ {
+ "id": "a24c1a4622e3c05097f71d67",
+ "title": "Where do I belong"
+ },
+ {
+ "id": "a3566b1109230028080c9345",
+ "title": "Sum All Numbers in a Range"
+ },
+ {
+ "id": "a5de63ebea8dbee56860f4f2",
+ "title": "Diff Two Arrays"
+ },
+ {
+ "id": "a7f4d8f2483413a6ce226cac",
+ "title": "Roman Numeral Converter"
+ },
+ {
+ "id": "a8e512fbe388ac2f9198f0fa",
+ "title": "Where art thou"
+ },
+ {
+ "id": "a0b5010f579e69b815e7c5d6",
+ "title": "Search and Replace"
+ },
+ {
+ "id": "aa7697ea2477d1316795783b",
+ "title": "Pig Latin"
+ },
+ {
+ "id": "afd15382cdfb22c9efe8b7de",
+ "title": "DNA Pairing"
+ },
+ {
+ "id": "af7588ade1100bde429baf20",
+ "title": "Missing letters"
+ },
+ {
+ "id": "a77dbc43c33f39daa4429b4f",
+ "title": "Boo who"
+ },
+ {
+ "id": "a105e963526e7de52b219be9",
+ "title": "Sorted Union"
+ },
+ {
+ "id": "a6b0bb188d873cb2c8729495",
+ "title": "Convert HTML Entities"
+ },
+ {
+ "id": "a103376db3ba46b2d50db289",
+ "title": "Spinal Tap Case"
+ },
+ {
+ "id": "a5229172f011153519423690",
+ "title": "Sum All Odd Fibonacci Numbers"
+ },
+ {
+ "id": "a3bfc1673c0526e06d3ac698",
+ "title": "Sum All Primes"
+ },
+ {
+ "id": "ae9defd7acaf69703ab432ea",
+ "title": "Smallest Common Multiple"
+ },
+ {
+ "id": "a6e40f1041b06c996f7b2406",
+ "title": "Finders Keepers"
+ },
+ {
+ "id": "a5deed1811a43193f9f1c841",
+ "title": "Drop it"
+ },
+ {
+ "id": "ab306dbdcc907c7ddfc30830",
+ "title": "Steamroller"
+ },
+ {
+ "id": "a8d97bd4c764e91f9d2bda01",
+ "title": "Binary Agents"
+ },
+ {
+ "id": "a10d2431ad0c6a099a4b8b52",
+ "title": "Everything Be True"
+ },
+ {
+ "id": "a97fd23d9b809dac9921074f",
+ "title": "Arguments Optional"
+ },
+ {
+ "id": "bd7158d8c442eddfbeb5bd1f",
+ "title": "Get Set for Ziplines"
+ },
+ {
+ "id": "bd7158d8c242eddfaeb5bd13",
+ "title": "Build a Personal Portfolio Webpage"
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd13",
+ "title": "Build a Random Quote Machine"
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd0f",
+ "title": "Build a Pomodoro Clock"
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd17",
+ "title": "Build a JavaScript Calculator"
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd10",
+ "title": "Show the Local Weather"
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd1f",
+ "title": "Use the Twitch.tv JSON API"
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd18",
+ "title": "Stylize Stories on Camper News"
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd19",
+ "title": "Build a Wikipedia Viewer"
+ },
+ {
+ "id": "bd7158d8c442eedfaeb5bd1c",
+ "title": "Build a Tic Tac Toe Game"
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd1c",
+ "title": "Build a Simon Game"
+ }
+ ],
+ "nameCn": "",
+ "descriptionCn": [],
+ "nameFr": "",
+ "descriptionFr": [],
+ "nameRu": "",
+ "descriptionRu": [],
+ "nameEs": "",
+ "descriptionEs": [],
+ "namePt": "",
+ "descriptionPt": []
+ }
+ ]
+}
diff --git a/seed/challenges/full-stack-development-certificate.json b/seed/challenges/full-stack-development-certificate.json
new file mode 100644
index 0000000000..901883aebc
--- /dev/null
+++ b/seed/challenges/full-stack-development-certificate.json
@@ -0,0 +1,286 @@
+{
+ "name": "Claim Your Full Stack Development Certificate",
+ "order": 21,
+ "challenges": [
+ {
+ "id": "660add10cb82ac38a17513be",
+ "title": "Claim Your Full Stack Development Certificate",
+ "difficulty": 0.00,
+ "challengeSeed": [],
+ "description": [
+ [
+ "http://i.imgur.com/RlEk2IF.jpg",
+ "a picture of Free Code Camp's 4 benefits: Get connected, Learn JavaScript, Build your Portfolio, Help nonprofits",
+ "Welcome to Free Code Camp. We're an open source community of busy people who learn to code and help nonprofits.",
+ ""
+ ]
+ ],
+ "type": "Waypoint",
+ "challengeType": 7,
+ "tests": [
+ {
+ "id": "ad7123c8c441eddfaeb5bdef",
+ "title": "Meet Bonfire"
+ },
+ {
+ "id": "a202eed8fc186c8434cb6d61",
+ "title": "Reverse a String"
+ },
+ {
+ "id": "a302f7aae1aa3152a5b413bc",
+ "title": "Factorialize a Number"
+ },
+ {
+ "id": "aaa48de84e1ecc7c742e1124",
+ "title": "Check for Palindromes"
+ },
+ {
+ "id": "a26cbbe9ad8655a977e1ceb5",
+ "title": "Find the Longest Word in a String"
+ },
+ {
+ "id": "ab6137d4e35944e21037b769",
+ "title": "Title Case a Sentence"
+ },
+ {
+ "id": "a789b3483989747d63b0e427",
+ "title": "Return Largest Numbers in Arrays"
+ },
+ {
+ "id": "acda2fb1324d9b0fa741e6b5",
+ "title": "Confirm the Ending"
+ },
+ {
+ "id": "afcc8d540bea9ea2669306b6",
+ "title": "Repeat a string repeat a string"
+ },
+ {
+ "id": "ac6993d51946422351508a41",
+ "title": "Truncate a string"
+ },
+ {
+ "id": "a9bd25c716030ec90084d8a1",
+ "title": "Chunky Monkey"
+ },
+ {
+ "id": "ab31c21b530c0dafa9e241ee",
+ "title": "Slasher Flick"
+ },
+ {
+ "id": "af2170cad53daa0770fabdea",
+ "title": "Mutations"
+ },
+ {
+ "id": "adf08ec01beb4f99fc7a68f2",
+ "title": "Falsy Bouncer"
+ },
+ {
+ "id": "a39963a4c10bc8b4d4f06d7e",
+ "title": "Seek and Destroy"
+ },
+ {
+ "id": "a24c1a4622e3c05097f71d67",
+ "title": "Where do I belong"
+ },
+ {
+ "id": "a3566b1109230028080c9345",
+ "title": "Sum All Numbers in a Range"
+ },
+ {
+ "id": "a5de63ebea8dbee56860f4f2",
+ "title": "Diff Two Arrays"
+ },
+ {
+ "id": "a7f4d8f2483413a6ce226cac",
+ "title": "Roman Numeral Converter"
+ },
+ {
+ "id": "a8e512fbe388ac2f9198f0fa",
+ "title": "Where art thou"
+ },
+ {
+ "id": "a0b5010f579e69b815e7c5d6",
+ "title": "Search and Replace"
+ },
+ {
+ "id": "aa7697ea2477d1316795783b",
+ "title": "Pig Latin"
+ },
+ {
+ "id": "afd15382cdfb22c9efe8b7de",
+ "title": "DNA Pairing"
+ },
+ {
+ "id": "af7588ade1100bde429baf20",
+ "title": "Missing letters"
+ },
+ {
+ "id": "a77dbc43c33f39daa4429b4f",
+ "title": "Boo who"
+ },
+ {
+ "id": "a105e963526e7de52b219be9",
+ "title": "Sorted Union"
+ },
+ {
+ "id": "a6b0bb188d873cb2c8729495",
+ "title": "Convert HTML Entities"
+ },
+ {
+ "id": "a103376db3ba46b2d50db289",
+ "title": "Spinal Tap Case"
+ },
+ {
+ "id": "a5229172f011153519423690",
+ "title": "Sum All Odd Fibonacci Numbers"
+ },
+ {
+ "id": "a3bfc1673c0526e06d3ac698",
+ "title": "Sum All Primes"
+ },
+ {
+ "id": "ae9defd7acaf69703ab432ea",
+ "title": "Smallest Common Multiple"
+ },
+ {
+ "id": "a6e40f1041b06c996f7b2406",
+ "title": "Finders Keepers"
+ },
+ {
+ "id": "a5deed1811a43193f9f1c841",
+ "title": "Drop it"
+ },
+ {
+ "id": "ab306dbdcc907c7ddfc30830",
+ "title": "Steamroller"
+ },
+ {
+ "id": "a8d97bd4c764e91f9d2bda01",
+ "title": "Binary Agents"
+ },
+ {
+ "id": "a10d2431ad0c6a099a4b8b52",
+ "title": "Everything Be True"
+ },
+ {
+ "id": "a97fd23d9b809dac9921074f",
+ "title": "Arguments Optional"
+ },
+ {
+ "id": "bd7158d8c442eddfbeb5bd1f",
+ "title": "Get Set for Ziplines"
+ },
+ {
+ "id": "bd7158d8c242eddfaeb5bd13",
+ "title": "Build a Personal Portfolio Webpage"
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd13",
+ "title": "Build a Random Quote Machine"
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd0f",
+ "title": "Build a Pomodoro Clock"
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd17",
+ "title": "Build a JavaScript Calculator"
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd10",
+ "title": "Show the Local Weather"
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd1f",
+ "title": "Use the Twitch.tv JSON API"
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd18",
+ "title": "Stylize Stories on Camper News"
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd19",
+ "title": "Build a Wikipedia Viewer"
+ },
+ {
+ "id": "bd7158d8c442eedfaeb5bd1c",
+ "title": "Build a Tic Tac Toe Game"
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd1c",
+ "title": "Build a Simon Game"
+ },
+ {
+ "id": "a2f1d72d9b908d0bd72bb9f6",
+ "title": "Make a Person"
+ },
+ {
+ "id": "af4afb223120f7348cdfc9fd",
+ "title": "Map the Debris"
+ },
+ {
+ "id": "a3f503de51cfab748ff001aa",
+ "title": "Pairwise"
+ },
+ {
+ "id": "aff0395860f5d3034dc0bfc9",
+ "title": "Validate US Telephone Numbers"
+ },
+ {
+ "id": "a3f503de51cf954ede28891d",
+ "title": "Symmetric Difference"
+ },
+ {
+ "id": "aa2e6f85cab2ab736c9a9b24",
+ "title": "Exact Change"
+ },
+ {
+ "id": "a56138aff60341a09ed6c480",
+ "title": "Inventory Update"
+ },
+ {
+ "id": "a7bf700cd123b9a54eef01d5",
+ "title": "No repeats please"
+ },
+ {
+ "id": "a19f0fbe1872186acd434d5a",
+ "title": "Friendly Date Ranges"
+ },
+ {
+ "id": "bd7158d8c443eddfaeb5bcef",
+ "title": "Get Set for Basejumps"
+ },
+ {
+ "id": "bd7158d8c443eddfaeb5bdef",
+ "title": "Build a Voting App"
+ },
+ {
+ "id": "bd7158d8c443eddfaeb5bdff",
+ "title": "Build a Nightlife Coordination App"
+ },
+ {
+ "id": "bd7158d8c443eddfaeb5bd0e",
+ "title": "Chart the Stock Market"
+ },
+ {
+ "id": "bd7158d8c443eddfaeb5bd0f",
+ "title": "Manage a Book Trading Club"
+ },
+ {
+ "id": "bd7158d8c443eddfaeb5bdee",
+ "title": "Build a Pinterest Clone"
+ }
+ ],
+ "nameCn": "",
+ "descriptionCn": [],
+ "nameFr": "",
+ "descriptionFr": [],
+ "nameRu": "",
+ "descriptionRu": [],
+ "nameEs": "",
+ "descriptionEs": [],
+ "namePt": "",
+ "descriptionPt": []
+ }
+ ]
+}
diff --git a/seed/challenges/getting-started.json b/seed/challenges/getting-started.json
index d5f7163c68..c35c3541f8 100644
--- a/seed/challenges/getting-started.json
+++ b/seed/challenges/getting-started.json
@@ -1,6 +1,6 @@
{
"name": "Get Started with Free Code Camp",
- "order": 0.000,
+ "order": 1,
"challenges": [
{
"id": "560add10cb82ac38a17513be",
diff --git a/seed/challenges/git.json b/seed/challenges/git.json
index 7c53503f0f..d3abf068ba 100644
--- a/seed/challenges/git.json
+++ b/seed/challenges/git.json
@@ -1,6 +1,6 @@
{
"name": "Git",
- "order" : 0.016,
+ "order" : 17,
"challenges": [
{
"id": "bd7353d8c341eddeaeb5bd0f",
diff --git a/seed/challenges/html5-and-css.json b/seed/challenges/html5-and-css.json
index cdfbf6543c..3b2f72853e 100644
--- a/seed/challenges/html5-and-css.json
+++ b/seed/challenges/html5-and-css.json
@@ -1,6 +1,6 @@
{
"name": "HTML5 and CSS",
- "order": 0.002,
+ "order": 2,
"challenges": [
{
"id": "bd7123c8c441eddfaeb5bdef",
diff --git a/seed/challenges/intermediate-bonfires.json b/seed/challenges/intermediate-bonfires.json
index fc2c035374..cc15964181 100644
--- a/seed/challenges/intermediate-bonfires.json
+++ b/seed/challenges/intermediate-bonfires.json
@@ -1,6 +1,6 @@
{
"name": "Intermediate Algorithm Scripting",
- "order": 0.009,
+ "order": 9,
"challenges": [
{
"id": "a3566b1109230028080c9345",
diff --git a/seed/challenges/intermediate-ziplines.json b/seed/challenges/intermediate-ziplines.json
index c702e91356..27680d7350 100644
--- a/seed/challenges/intermediate-ziplines.json
+++ b/seed/challenges/intermediate-ziplines.json
@@ -1,8 +1,107 @@
{
"name": "Intermediate Front End Development Projects",
- "order": 0.015,
+ "order": 11,
"challenges": [
{
+ "id": "bd7158d8c442eddfaeb5bd10",
+ "title": "Show the Local Weather",
+ "challengeSeed": ["126415127"],
+ "description": [
+ "Objective: Build a CodePen.io app that successfully reverse-engineers this: http://codepen.io/AdventureBear/full/yNBJRj.",
+ "Rule #1: Don't look at the example project's code on CodePen. Figure it out for yourself.",
+ "Rule #2: You may use whichever libraries or APIs you need.",
+ "Rule #3: Reverse engineer the example project's functionality, and also feel free to personalize it.",
+ "Here are the user stories you must enable, and optional bonus user stories:",
+ "User Story: As a user, I can see the weather in my current location.",
+ "Bonus User Story: As a user, I can see an icon depending on the weather.",
+ "Bonus User Story: As a user, I see a different background image (e.g. snowy mountain, hot desert) depending on the weather.",
+ "Bonus User Story: As a user, I can push a button to toggle between Fahrenheit and Celsius.",
+ "Remember to use Read-Search-Ask if you get stuck.",
+ "When you are finished, click the \"I've completed this challenge\" button and include a link to your CodePen. If you pair programmed, you should also include the Free Code Camp username of your pair.",
+ "If you'd like immediate feedback on your project from fellow campers, click this button and paste in a link to your CodePen project.
Click here then add your link to your tweet's text"
+ ],
+ "type": "zipline",
+ "challengeType": 3,
+ "tests": [],
+ "nameCn": "",
+ "descriptionCn": [],
+ "nameFr": "",
+ "descriptionFr": [],
+ "nameRu": "Покажите местную погоду",
+ "descriptionRu": [
+ "Задание: Создайте CodePen.io который успешно копирует вот этот: http://codepen.io/AdventureBear/full/yNBJRj.",
+ "Правило #1: Не подсматривайте код приведенного на CodePen примера. Напишите его самостоятельно.",
+ "Правило #2: Можете использовать любые библиотеки или API, которые потребуются.",
+ "Правило #3: Воссоздайте функционал приведенного примера и не стесняйтесь добавить что-нибудь от себя.",
+ "Реализуйте следующие пользовательские истории, сделайте также бонусные по желанию:",
+ "Пользовательская история: В качестве пользователя, я могу узнать погоду с учетом моего текущего местоположения.",
+ "Бонусная пользовательская история: В качестве пользователя, я могу в зависимости от погоды видеть различные температурные значки.",
+ "Бонусная пользовательская история: В качестве пользователя, я могу в зависимости от погоды видеть различные фоновые изображения (снежные горы, знойная пустыня).",
+ "Бонусная пользовательская история: В качестве пользователя, я могу нажать на кнопку чтобы переключится между градусами по Цельсию или по Фаренгейту.",
+ "Если что-то не получается, воспользуйтесь Read-Search-Ask.",
+ "Когда выполните задание кликните кнопку \"I've completed this challenge\" и добавьте ссылку на ваш CodePen. Если вы программировали с кем-то в паре, также добавьте имя вашего напарника.",
+ "Если вы хотите получить немедленную оценку вашего проекта, нажмите эту кнопку и добавьте ссылку на ваш CodePen. В противном случае мы проверим его перед тем как вы приступите к проектам для некоммерческих организаций.
Click here then add your link to your tweet's text"
+ ],
+ "nameEs": "",
+ "descriptionEs": [],
+ "namePt": "",
+ "descriptionPt": []
+ },
+ {
+ "id": "bd7158d8c442eddfaeb5bd1f",
+ "title": "Use the Twitch.tv JSON API",
+ "challengeSeed": ["126411564"],
+ "description": [
+ "Objective: Build a CodePen.io app that successfully reverse-engineers this: http://codepen.io/GeoffStorbeck/full/GJKRxZ.",
+ "Rule #1: Don't look at the example project's code on CodePen. Figure it out for yourself.",
+ "Rule #2: You may use whichever libraries or APIs you need.",
+ "Rule #3: Reverse engineer the example project's functionality, and also feel free to personalize it.",
+ "Here are the user stories you must enable, and optional bonus user stories:",
+ "User Story: As a user, I can see whether Free Code Camp is currently streaming on Twitch.tv.",
+ "User Story: As a user, I can click the status output and be sent directly to the Free Code Camp's Twitch.tv channel.",
+ "User Story: As a user, if Free Code Camp is streaming, I can see additional details about what they are streaming.",
+ "Bonus User Story: As a user, I can search through the streams listed.",
+ "Bonus User Story: As a user, I will see a placeholder notification if a streamer has closed their Twitch account. You can verify this works by adding brunofin and comster404 to your array of Twitch streamers.",
+ "Hint: Here's an example call to Twitch.tv's JSON API: https://api.twitch.tv/kraken/streams/freecodecamp
.",
+ "Hint: The relevant documentation about this API call is here: https://github.com/justintv/Twitch-API/blob/master/v3_resources/streams.md#get-streamschannel.",
+ "Hint: Here's an array of the Twitch.tv usernames of people who regularly stream coding: [\"freecodecamp\", \"storbeck\", \"terakilobyte\", \"habathcx\",\"RobotCaleb\",\"thomasballinger\",\"noobs2ninjas\",\"beohoff\"]
",
+ "Remember to use Read-Search-Ask if you get stuck.",
+ "When you are finished, click the \"I've completed this challenge\" button and include a link to your CodePen. If you pair programmed, you should also include the Free Code Camp username of your pair.",
+ "If you'd like immediate feedback on your project from fellow campers, click this button and paste in a link to your CodePen project.
Click here then add your link to your tweet's text"
+ ],
+ "type": "zipline",
+ "challengeType": 3,
+ "tests": [],
+ "nameCn": "",
+ "descriptionCn": [],
+ "nameFr": "",
+ "descriptionFr": [],
+ "nameRu": "Используйте Twitch.tv JSON API",
+ "descriptionRu": [
+ "Задание: Создайте CodePen.io который успешно копирует вот этот: http://codepen.io/GeoffStorbeck/full/GJKRxZ.",
+ "Правило #1: Не подсматривайте код приведенного на CodePen примера. Напишите его самостоятельно.",
+ "Правило #2: Можете использовать любые библиотеки или API, которые потребуются.",
+ "Правило #3: Воссоздайте функционал приведенного примера и не стесняйтесь добавить что-нибудь от себя.",
+ "Реализуйте следующие пользовательские истории, сделайте также бонусные по желанию:",
+ "Пользовательская история: В качестве пользователя, я могу увидеть идет ли в данный момент на Twitch.tv трансляция Free Code Camp.",
+ "Пользовательская история: В качестве пользователя, я могу, кликнув на описание трансляции, перейти на канал Free Code Camp.",
+ "Пользовательская история: В качестве пользователя, я могу видеть дополнительную информацию о текущей трансляции Free Code Camp.",
+ "Бонусная пользовательская история: В качестве пользователя, я могу произвести поиск среди перечисленных каналов.",
+ "Бонусная пользовательская история: В качестве пользователя, я могу видеть уведомление, если создатель канала закрыл свой аккаунт на Twitch.tv. Добавьте в массив имена пользователей brunofin и comster404, чтобы убедиться, что эта функция реализована правильно.",
+ "Подсказка: Пример запроса к Twitch.tv JSON API: https://api.twitch.tv/kraken/streams/freecodecamp
.",
+ "Подсказка: Документацию об этом запросе можно найти по ссылке: https://github.com/justintv/Twitch-API/blob/master/v3_resources/streams.md#get-streamschannel.",
+ "Подсказка: В этом массиве приведены имена пользователей, которые регулярно пишут код онлайн: [\"freecodecamp\", \"storbeck\", \"terakilobyte\", \"habathcx\",\"RobotCaleb\",\"comster404\",\"brunofin\",\"thomasballinger\",\"noobs2ninjas\",\"beohoff\"]
",
+ "Если что-то не получается, воспользуйтесь Read-Search-Ask.",
+ "Когда выполните задание кликните кнопку \"I've completed this challenge\" и добавьте ссылку на ваш CodePen. Если вы программировали с кем-то в паре, также добавьте имя вашего напарника.",
+ "Если вы хотите получить немедленную оценку вашего проекта, нажмите эту кнопку и добавьте ссылку на ваш CodePen. В противном случае мы проверим его перед тем как вы приступите к проектам для некоммерческих организаций.
Click here then add your link to your tweet's text"
+ ],
+ "nameEs": "",
+ "descriptionEs": [],
+ "namePt": "",
+ "descriptionPt": []
+ },
+ {
+
"id": "bd7158d8c442eddfaeb5bd18",
"title": "Stylize Stories on Camper News",
"challengeSeed": ["126415129"],
@@ -66,37 +165,6 @@
"namePt": "",
"descriptionPt": []
},
- {
- "id": "bd7158d8c442eddfaeb5bd17",
- "title": "Build a JavaScript Calculator",
- "challengeSeed": ["126411565"],
- "description": [
- "Objective: Build a CodePen.io app that successfully reverse-engineers this: http://codepen.io/GeoffStorbeck/full/zxgaqw.",
- "Rule #1: Don't look at the example project's code on CodePen. Figure it out for yourself.",
- "Rule #2: You may use whichever libraries or APIs you need.",
- "Rule #3: Reverse engineer the example project's functionality, and also feel free to personalize it.",
- "Here are the user stories you must enable, and optional bonus user stories:",
- "User Story: As a user, I can add, subtract, multiply and divide two numbers.",
- "Bonus User Story: I can clear the input field with a clear button.",
- "Bonus User Story: I can keep chaining mathematical operations together until I hit the clear button, and the calculator will tell me the correct output.",
- "Remember to use Read-Search-Ask if you get stuck.",
- "When you are finished, click the \"I've completed this challenge\" button and include a link to your CodePen. If you pair programmed, you should also include the Free Code Camp username of your pair.",
- "If you'd like immediate feedback on your project from fellow campers, click this button and paste in a link to your CodePen project.
Click here then add your link to your tweet's text"
- ],
- "type": "zipline",
- "challengeType": 3,
- "tests": [],
- "nameCn": "",
- "descriptionCn": [],
- "nameFr": "",
- "descriptionFr": [],
- "nameRu": "",
- "descriptionRu": [],
- "nameEs": "",
- "descriptionEs": [],
- "namePt": "",
- "descriptionPt": []
- },
{
"id": "bd7158d8c442eedfaeb5bd1c",
"title": "Build a Tic Tac Toe Game",
diff --git a/seed/challenges/jquery.json b/seed/challenges/jquery.json
index 8e3566bca9..8d3de88c68 100644
--- a/seed/challenges/jquery.json
+++ b/seed/challenges/jquery.json
@@ -1,6 +1,6 @@
{
"name": "jQuery",
- "order": 0.004,
+ "order": 4,
"challenges": [
{
"id": "bad87fee1348bd9acdd08826",
diff --git a/seed/challenges/json-apis-and-ajax.json b/seed/challenges/json-apis-and-ajax.json
new file mode 100644
index 0000000000..f8e11696b7
--- /dev/null
+++ b/seed/challenges/json-apis-and-ajax.json
@@ -0,0 +1,23 @@
+{
+ "name": "JSON APIs and Ajax",
+ "order": 10,
+ "challenges": [
+ {
+ "id": "bad88fee1348bd9ae8c08416",
+ "title": "Stand in challenge",
+ "dashedName": "waypoint-stand-in-challenge",
+ "difficulty": 3.24,
+ "description": [
+ ""
+ ],
+ "tests": [
+
+ ],
+ "challengeSeed": [
+ ""
+ ],
+ "challengeType": 0,
+ "type": "waypoint"
+ }
+ ]
+}
diff --git a/seed/challenges/mongodb.json b/seed/challenges/mongodb.json
index d1ed0e65ed..437a4da2e6 100644
--- a/seed/challenges/mongodb.json
+++ b/seed/challenges/mongodb.json
@@ -1,6 +1,6 @@
{
"name": "MongoDB",
- "order" : 0.018,
+ "order" : 19,
"challenges": [
{
"id": "bd7243d8c341eddeaeb5bd0f",
diff --git a/seed/challenges/nodejs-and-expressjs.json b/seed/challenges/nodejs-and-expressjs.json
index 1055a59221..63b6373489 100644
--- a/seed/challenges/nodejs-and-expressjs.json
+++ b/seed/challenges/nodejs-and-expressjs.json
@@ -1,6 +1,6 @@
{
"name": "Node.js and Express.js",
- "order" : 0.017,
+ "order" : 18,
"challenges": [
{
"id": "bd7153d8c441eddfaeb5bd0f",
diff --git a/seed/challenges/object-oriented-and-functional-programming.json b/seed/challenges/object-oriented-and-functional-programming.json
index 5670520ce7..3d32886fac 100644
--- a/seed/challenges/object-oriented-and-functional-programming.json
+++ b/seed/challenges/object-oriented-and-functional-programming.json
@@ -1,6 +1,6 @@
{
"name": "Object Oriented and Functional Programming",
- "order": 0.006,
+ "order": 6,
"note": [
"Methods",
"Closures",
diff --git a/seed/challenges/upper-intermediate-bonfires.json b/seed/challenges/upper-intermediate-bonfires.json
index b1ee890d80..b1ddbc2ac1 100644
--- a/seed/challenges/upper-intermediate-bonfires.json
+++ b/seed/challenges/upper-intermediate-bonfires.json
@@ -1,6 +1,6 @@
{
"name": "Upper Intermediate Algorithm Scripting",
- "order": 0.011,
+ "order": 13,
"challenges": [
{
"id": "a2f1d72d9b908d0bd72bb9f6",