freeCodeCamp/curriculum/challenges/english/05-apis-and-microservices/managing-packages-with-npm/add-keywords-to-your-packag...

1.8 KiB

id title challengeType forumTopicId dashedName
587d7fb4367417b2b2512bfd Add Keywords to Your package.json 2 301526 add-keywords-to-your-package-json

--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);
    }
  );

--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.
*/