freeCodeCamp.org 的开源代码库和课程。免费学习编码。
Go to file
Stuart Taylor ee66d84ccb feat(package): Initial Curriculum separation (#17174)
* feat(package): Initial Curriculum separation

* feat(package): Add org scope to package

* chore(ooops): Remove development file

* feat(npm): Add .npmignore

* fix(paths): Fix curriculum paths

* feat(build): Add a build step

* chore(seed): Move package file back to seed

* fix(ignore): Fix .npmIgnore file

* chore(docs): Update README

* chore(seed): Rename coding interview blocks

* fix(seed): Challenge files now fit into learn

* chore(seed): Update seed files for use in learn

* chore(escapes): Unescape script tags of jQuery
2018-05-21 19:26:49 +05:30
challenges feat(package): Initial Curriculum separation (#17174) 2018-05-21 19:26:49 +05:30
formattingConversion feat(package): Initial Curriculum separation (#17174) 2018-05-21 19:26:49 +05:30
math-challenges fix(seed): Remove redundant seed files from math directory 2017-09-09 10:52:12 -05:00
requiresTests feat(package): Initial Curriculum separation (#17174) 2018-05-21 19:26:49 +05:30
schema feat(package): Initial Curriculum separation (#17174) 2018-05-21 19:26:49 +05:30
.gitignore feat(package): Initial Curriculum separation (#17174) 2018-05-21 19:26:49 +05:30
.npmignore feat(package): Initial Curriculum separation (#17174) 2018-05-21 19:26:49 +05:30
addAssertsToTapTest.js feat(seed): "unpack" and "repack" scripts 2018-04-03 19:52:56 +05:30
challenge-style-guide.md docs(seed): Document how to edit and test challenges (#16511) 2018-01-20 22:00:21 +05:30
challengeTitles.js fix(seed): Simplify Unique Titles Test (#17056) 2018-04-13 15:15:40 +01:00
create-challenge-bundle.js restructure challenges within directories 2015-12-14 13:19:30 -08:00
createPathMigrationMap.js feat(challenge-redirect): Make '/challenge' and '/map' redirect to learn (#17144) 2018-05-14 13:04:51 +05:30
get-emails.js Chore: Update User model (#17171) 2018-05-15 19:26:26 +05:30
getChallenges.js feat(seed): "unpack" and "repack" scripts 2018-04-03 19:52:56 +05:30
gulpfile.js feat(package): Initial Curriculum separation (#17174) 2018-05-21 19:26:49 +05:30
index.js feat(package): Initial Curriculum separation (#17174) 2018-05-21 19:26:49 +05:30
LICENSE.md docs(license): Update License fix for GitHub (#16113) 2017-11-25 11:47:27 -06:00
mongoIds.js feat(seed): "unpack" and "repack" scripts 2018-04-03 19:52:56 +05:30
package-entry.js feat(package): Initial Curriculum separation (#17174) 2018-05-21 19:26:49 +05:30
package-lock.json feat(package): Initial Curriculum separation (#17174) 2018-05-21 19:26:49 +05:30
package.json feat(package): Initial Curriculum separation (#17174) 2018-05-21 19:26:49 +05:30
README.md feat(package): Initial Curriculum separation (#17174) 2018-05-21 19:26:49 +05:30
repack.js feat(seed): add dasherized titles to unpacked filenames 2018-04-03 19:53:44 +05:30
test-challenges.js feat(package): Initial Curriculum separation (#17174) 2018-05-21 19:26:49 +05:30
unpack.js feat(seed): add dasherized titles to unpacked filenames 2018-04-03 19:53:44 +05:30
unpacked.css feat(seed): "unpack" and "repack" scripts 2018-04-03 19:52:56 +05:30
unpacked.js feat(seed): "unpack" and "repack" scripts 2018-04-03 19:52:56 +05:30
unpackedChallenge.js feat(package): Initial Curriculum separation (#17174) 2018-05-21 19:26:49 +05:30
utils.js feat(package): Initial Curriculum separation (#17174) 2018-05-21 19:26:49 +05:30

freeCodeCamp Curriculum

This package contains the "seed" files used in the freeCodeCamp Curriculum.

Installation

npm i @freecodecamp/curriculum
# or
yarn add @freecodecamp/curriculum

Usage

import { getChallenges } from '@freecodecamp/curriculum';

getChallenges() // will provide an array of blocks i.e. basic CSS, functional programming

block Structure

{
  "name": "ES6",
  "order": 2,
  "time": "5 hours",
  "helpRoom": "Help",
  "challenges": [/*<challenge>*/],
  "fileName": "02-javascript-algorithms-and-data-structures/es6.json",
  "superBlock": "javascript-algorithms-and-data-structures",
  "superOrder": 2
}

challenge Structure

{
  "id": "ObjectId()",
  "title": "Declare a Read-Only Variable with the const Keyword",
  "description": [
    "A Description of the challenge and what is required to pass"
  ],
  "tests": [
    {
      "text": "should return \"foo\"",
      "testString": "a stringified function using Chai asserts"
    }
  ],
  "challengeType": 1,
  "translations": {},
  "files": {
    "indexjs": {
      "key": "indexjs",
      "ext": "js",
      "name": "index",
      "contents": [
        "Initial editor seed"
      ],
      "head": [
        "A place for test set up",
        "Can be thought of as mocha's beforeEach()"
      ],
      "tail": [
        "A place for test tear down",
        "Can be thought of as mocha's afterEach()"
        ]
    }
  }
},