Files
freeCodeCamp/curriculum/challenges/english/05-apis-and-microservices/managing-packages-with-npm/add-keywords-to-your-package.json.md
Oliver Eyton-Williams 0bd52f8bd1 Feat: add new Markdown parser (#39800)
and change all the challenges to new `md` format.
2020-11-27 10:02:05 -08:00

1.8 KiB

id, title, challengeType, forumTopicId
id title challengeType forumTopicId
587d7fb4367417b2b2512bfd Add Keywords to Your package.json 2 301526

--description--

The keywords field is where you can describe your project using related keywords. Here's an example:

"keywords": [ "descriptive", "related", "words" ],

As you can see, this field is structured as an array of double-quoted strings.

--instructions--

Add an array of suitable strings to the keywords field in the package.json file of your project.

One of the keywords should be "freecodecamp".

--hints--

package.json should have a valid "keywords" key

(getUserInput) =>
  $.get(getUserInput('url') + '/_api/package.json').then(
    (data) => {
      var packJson = JSON.parse(data);
      assert(packJson.keywords, '"keywords" is missing');
    },
    (xhr) => {
      throw new Error(xhr.responseText);
    }
  );

"keywords" field should be an Array

(getUserInput) =>
  $.get(getUserInput('url') + '/_api/package.json').then(
    (data) => {
      var packJson = JSON.parse(data);
      assert.isArray(packJson.keywords, '"keywords" is not an array');
    },
    (xhr) => {
      throw new Error(xhr.responseText);
    }
  );

"keywords" should include "freecodecamp"

(getUserInput) =>
  $.get(getUserInput('url') + '/_api/package.json').then(
    (data) => {
      var packJson = JSON.parse(data);
      assert.include(
        packJson.keywords,
        'freecodecamp',
        '"keywords" does not include "freecodecamp"'
      );
    },
    (xhr) => {
      throw new Error(xhr.responseText);
    }
  );

--seed--

--solutions--

/**
  Backend challenges don't need solutions, 
  because they would need to be tested against a full working project. 
  Please check our contributing guidelines to learn more.
*/