Repository: freeCodeCamp/freeCodeCamp
File: shared/config/curriculum.ts (TypeScript)

Code before:
  [SuperBlocks.BackEndDevApis]: '05-back-end-development-and-apis',
  [SuperBlocks.QualityAssurance]: '06-quality-assurance',
  [SuperBlocks.SciCompPy]: '07-scientific-computing-with-python',
  [SuperBlocks.DataAnalysisPy]: '08-data-analysis-with-python',
  [SuperBlocks.InfoSec]: '09-information-security',
  [SuperBlocks.CodingInterviewPrep]: '10-coding-interview-prep',
  [SuperBlocks.MachineLearningPy]: '11-machine-learning-with-python',
  [SuperBlocks.RelationalDb]: '13-relational-databases',
  [SuperBlocks.RespWebDesignNew]: '14-responsive-web-design-22',
  [SuperBlocks.JsAlgoDataStructNew]:
    '15-javascript-algorithms-and-data-structures-22',
  [SuperBlocks.TheOdinProject]: '16-the-odin-project',
  [SuperBlocks.CollegeAlgebraPy]: '17-college-algebra-with-python',
  [SuperBlocks.ProjectEuler]: '18-project-euler',
  [SuperBlocks.FoundationalCSharp]: '19-foundational-c-sharp-with-microsoft',
  [SuperBlocks.A2English]: '21-a2-english-for-developers',
  [SuperBlocks.RosettaCode]: '22-rosetta-code',
  [SuperBlocks.PythonForEverybody]: '23-python-for-everybody',
  [SuperBlocks.B1English]: '24-b1-english-for-developers',
  [SuperBlocks.FullStackDeveloper]: '25-front-end-development',
  [SuperBlocks.A2Spanish]: '26-a2-professional-spanish',
  [SuperBlocks.A2Chinese]: '27-a2-professional-chinese',
  [SuperBlocks.BasicHtml]: '28-basic-html',
  [SuperBlocks.SemanticHtml]: '29-semantic-html',
  [SuperBlocks.DevPlayground]: '99-dev-playground',
  [SuperBlocks.A1Chinese]: '30-a1-professional-chinese'
};

// Same as superBlockToFolderMap but with the keys and values reversed
export const folderToSuperBlockMap = Object.fromEntries(
  Object.entries(superBlockToFolderMap).map(([key, value]) => [value, key])
);

export const languageSuperBlocks = [
  SuperBlocks.A2English,
  SuperBlocks.B1English,
  SuperBlocks.A2Spanish,
  SuperBlocks.A2Chinese
];

/*
 * SuperBlockStages.Upcoming = SHOW_UPCOMING_CHANGES === 'true'
 * 'Upcoming' is for development -> not shown on stag or prod anywhere
 *
 * SuperBlockStages.Next = deployed, but only shown if the Growthbook feature
 * is enabled.
 *
 */
export enum SuperBlockStage {
  Core,
  English,

Review comment (suggestion):
Nit: we probably should keep this in ascending order.

```suggestion
  [SuperBlocks.A1Chinese]: '30-a1-professional-chinese',
  [SuperBlocks.DevPlayground]: '99-dev-playground'
```

Code after:
  [SuperBlocks.BackEndDevApis]: '05-back-end-development-and-apis',
  [SuperBlocks.QualityAssurance]: '06-quality-assurance',
  [SuperBlocks.SciCompPy]: '07-scientific-computing-with-python',
  [SuperBlocks.DataAnalysisPy]: '08-data-analysis-with-python',
  [SuperBlocks.InfoSec]: '09-information-security',
  [SuperBlocks.CodingInterviewPrep]: '10-coding-interview-prep',
  [SuperBlocks.MachineLearningPy]: '11-machine-learning-with-python',
  [SuperBlocks.RelationalDb]: '13-relational-databases',
  [SuperBlocks.RespWebDesignNew]: '14-responsive-web-design-22',
  [SuperBlocks.JsAlgoDataStructNew]:
    '15-javascript-algorithms-and-data-structures-22',
  [SuperBlocks.TheOdinProject]: '16-the-odin-project',
  [SuperBlocks.CollegeAlgebraPy]: '17-college-algebra-with-python',
  [SuperBlocks.ProjectEuler]: '18-project-euler',
  [SuperBlocks.FoundationalCSharp]: '19-foundational-c-sharp-with-microsoft',
  [SuperBlocks.A2English]: '21-a2-english-for-developers',
  [SuperBlocks.RosettaCode]: '22-rosetta-code',
  [SuperBlocks.PythonForEverybody]: '23-python-for-everybody',
  [SuperBlocks.B1English]: '24-b1-english-for-developers',
  [SuperBlocks.FullStackDeveloper]: '25-front-end-development',
  [SuperBlocks.A2Spanish]: '26-a2-professional-spanish',
  [SuperBlocks.A2Chinese]: '27-a2-professional-chinese',
  [SuperBlocks.BasicHtml]: '28-basic-html',
  [SuperBlocks.SemanticHtml]: '29-semantic-html',
  [SuperBlocks.A1Chinese]: '30-a1-professional-chinese',
  [SuperBlocks.DevPlayground]: '99-dev-playground'
};

// Same as superBlockToFolderMap but with the keys and values reversed
export const folderToSuperBlockMap = Object.fromEntries(
  Object.entries(superBlockToFolderMap).map(([key, value]) => [value, key])
);

export const languageSuperBlocks = [
  SuperBlocks.A2English,
  SuperBlocks.B1English,
  SuperBlocks.A2Spanish,
  SuperBlocks.A2Chinese
];

/*
 * SuperBlockStages.Upcoming = SHOW_UPCOMING_CHANGES === 'true'
 * 'Upcoming' is for development -> not shown on stag or prod anywhere
 *
 * SuperBlockStages.Next = deployed, but only shown if the Growthbook feature
 * is enabled.
 *
 */
export enum SuperBlockStage {
  Core,
  English,