Skip to content

FreeCodeCampChina/curriculum

 
 

freeCodeCamp Curriculum

Build Status npm (scoped)

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';

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

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()"
        ]
    }
  }
},

翻译指南

工作流程

  1. 在本项目导航栏【Issue】中选择 Translation request 模板,并填写你想要翻译的章节(以独立 JSON 文件为最小单位)。

  2. 若你想翻译多节课,请用 GFM 的 Task lists 语法列出这些课程,并在翻译完每节课后在该条目前的复选框打勾,以此来跟踪自己的翻译进度。

  3. 翻译完成后请提交 Pull request,并选择 @S1ngS1ng@wudifeixue 两位同学进行评审。

【注意】 翻译文件不要在源文件上改动,请创建新文件并以 -cn.json 作为文件名后缀。

行文规范

  1. 最高原则:信、达、雅(技术专业内容要用语规范,网络用语不要出现)

  2. 专用单词:拼写正确(参考对应技术的官网、维基百科词条)、注意大小写

  3. 标点符号

    • 中英文各自选择对应的标点符号,中英文混合句视同中文语句(如括号内中英文混用,应用中文括号)
    • 中文标点、文字间无需空格
    • 英文单标点后空一格,成对标点左标左空格、右标右空格
  4. 全角与半角字符(如中文与英文,及中文与数字)间须用空格隔开(参考盘古

Packages

No packages published

Languages

  • JavaScript 98.9%
  • CSS 1.1%