diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000000..30e4120732 --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,10 @@ +Copyright (c) 2015 Free Code Camp . All rights reserved. +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of Free Code Camp nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY FREE CODE CAMP AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL FREE CODE CAMP OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file diff --git a/app.js b/app.js index 1121d0510d..10e269fda9 100755 --- a/app.js +++ b/app.js @@ -183,7 +183,7 @@ app.use(helmet.csp({ '*.twitter.com' ].concat(trusted), frameSrc: [ - + '*.gitter.im', '*.gitter.im https:', '*.vimeo.com', @@ -332,7 +332,7 @@ app.post( ); app.get('/privacy', function(req, res) { - res.redirect(301, '/field-guide/what-is-free-code-camp\'s-privacy-policy'); + res.redirect(301, '/field-guide/what-is-the-free-code-camp-privacy-policy?'); }); app.get('/api/slack', function(req, res) { diff --git a/package.json b/package.json index 06ac013149..a73ad3fc48 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,17 @@ "start": "node app.js", "test": "mocha" }, + "license": "BSD-3-Clause", + "contributors" : [ + { + "name": "Quincy Larson", + "url" : "https://github.com/QuincyLarson" + }, + { + "name": "Nathan Leniz", + "url": "https://github.com/terakilobyte" + } + ], "dependencies": { "accepts": "~1.2.5", "async": "~0.9.0", diff --git a/seed_data/coursewares.json b/seed_data/coursewares.json index d1dd9eb3c1..fffdab5fbb 100644 --- a/seed_data/coursewares.json +++ b/seed_data/coursewares.json @@ -29,7 +29,7 @@ "Now check your email and click the link in the email from Slack", "Complete the sign up process, then update your biographical information and upload an image. A picture of your face works best. This is how people will see you in the chat room, so put your best foot forward.", "Now enter the general chat room and introduce yourself to our chat room by typing: \"hello world!\".", - "Note that you're expected to follow our Code of Conduct: http://freecodecamp.com/field-guide/what-is-free-code-camp's-code-of-conduct.", + "Note that you're expected to follow our Code of Conduct: http://freecodecamp.com/field-guide/what-is-the-free-code-camp-code-of-conduct?", "Tell your fellow campers how you found Free Code Camp. Also tell us why you want to learn to code.", "Keep the chat room open while you work through the other challenges. That way you ask for help if you get stuck on a challenge. You can also socialize when you feel like taking a break.", "You can also access this chat room by clicking the \"Chat\" button in the upper right hand corner." @@ -493,11 +493,11 @@ "_id": "bd7154d8c441eddfaeb5bdef", "name": "Get Started with Angular.js", "difficulty": 0.34, - "challengeSeed": "125671736", + "challengeSeed": "114684726", "description": [ - "Angular.js is a popular client-side JavaScript framework. It will help you create buttery smooth browser-based interactions.", - "Codecademy has a fun, interactive Angular.js course. This will give us a quick tour of Angular.js's mechanics and features.", - "Complete Unit 1 of http://www.codecademy.com/learn/learn-angularjs" + "Code School has a short, free Angular.js course. This will give us a quick tour of Angular.js's mechanics and features.", + "In this course, we'll build a virtual shop entirely in Angular.js.", + "Go to http://campus.codeschool.com/courses/shaping-up-with-angular-js/level/1/section/1/video/1 and complete the section." ], "challengeType": 2, "tests": [] @@ -506,42 +506,49 @@ "_id": "bd7155d8c441eddfaeb5bdef", "name": "Apply Angular.js Directives", "difficulty": 0.35, - "challengeSeed": "125671736", + "challengeSeed": "114684727", "description": [ - "Complete Unit 2 of http://www.codecademy.com/learn/learn-angularjs" + "Directives serve as markers in your HTML. When Angular.js compiles your HTML, it will can alter the behavior of DOM elements based on the directives you've used.", + "Let's learn how these powerful directives work, and how to use them to make your web apps more dynamic", + "Go to http://campus.codeschool.com/courses/shaping-up-with-angular-js/level/2/section/1/video/1 and complete the section." ], "challengeType": 2, "tests": [] }, { "_id": "bd7156d8c441eddfaeb5bdef", - "name": "Create Angular.js Services", + "name": "Power Forms with Angular.js", "difficulty": 0.36, - "challengeSeed": "125671736", + "challengeSeed": "114684729", "description": [ - "Complete Unit 3 of http://www.codecademy.com/learn/learn-angularjs" + "One area where Angular.js really shines is its powerful web forms.", + "Learn how to create reactive Angular.js forms, including real-time form validation.", + "Go to http://campus.codeschool.com/courses/shaping-up-with-angular-js/level/3/section/1/video/1 and complete the section." ], "challengeType": 2, "tests": [] }, { "_id": "bd7157d8c441eddfaeb5bdef", - "name": "Structure Angular.js Routes", + "name": "Customize Angular.js Directives", "difficulty": 0.37, - "challengeSeed": "125671736", + "challengeSeed": "114685062", "description": [ - "Complete Unit 4 of http://www.codecademy.com/learn/learn-angularjs" + "Now we'll learn how to modify existing Angular.js directives, and even build directives of your own.", + "Go to http://campus.codeschool.com/courses/shaping-up-with-angular-js/level/4/section/1/video/1 and complete the section." ], "challengeType": 2, "tests": [] }, { "_id": "bd7158d8c441eddfaeb5bdef", - "name": "Build a Geolocation Angular App", + "name": "Create Angular.js Services", "difficulty": 0.38, - "challengeSeed": "125671736", + "challengeSeed": "114685060", "description": [ - "Complete Unit 5 of http://www.codecademy.com/learn/learn-angularjs" + "Services are functions that you can use and reuse throughout your Angular.js app to get things done.", + "We'll learn how to use services in this final Code School Angular.js challenge.", + "Go to http://campus.codeschool.com/courses/shaping-up-with-angular-js/level/5/section/1/video/1 and complete the section." ], "challengeType": 2, "tests": [] diff --git a/seed_data/field-guides.json b/seed_data/field-guides.json index e0761835bc..141c1700f6 100644 --- a/seed_data/field-guides.json +++ b/seed_data/field-guides.json @@ -4,7 +4,7 @@ "name": "How do I use this guide?", "description": [ "