2018-10-25 18:29:56 +00:00
|
|
|
---
|
|
|
|
id: 587d7fb4367417b2b2512bfd
|
|
|
|
title: Add Keywords to Your package.json
|
|
|
|
challengeType: 2
|
2019-08-05 16:17:33 +00:00
|
|
|
forumTopicId: 301526
|
2021-01-13 02:31:00 +00:00
|
|
|
dashedName: add-keywords-to-your-package-json
|
2018-10-25 18:29:56 +00:00
|
|
|
---
|
|
|
|
|
2020-11-27 18:02:05 +00:00
|
|
|
# --description--
|
|
|
|
|
|
|
|
The `keywords` field is where you can describe your project using related keywords. Here's an example:
|
2019-05-14 12:00:06 +00:00
|
|
|
|
|
|
|
```json
|
|
|
|
"keywords": [ "descriptive", "related", "words" ],
|
|
|
|
```
|
|
|
|
|
2018-10-25 18:29:56 +00:00
|
|
|
As you can see, this field is structured as an array of double-quoted strings.
|
|
|
|
|
2020-11-27 18:02:05 +00:00
|
|
|
# --instructions--
|
|
|
|
|
|
|
|
Add an array of suitable strings to the `keywords` field in the package.json file of your project.
|
|
|
|
|
2019-03-03 18:30:44 +00:00
|
|
|
One of the keywords should be "freecodecamp".
|
2018-10-25 18:29:56 +00:00
|
|
|
|
2020-11-27 18:02:05 +00:00
|
|
|
# --hints--
|
2018-10-25 18:29:56 +00:00
|
|
|
|
2020-11-27 18:02:05 +00:00
|
|
|
package.json should have a valid "keywords" key
|
2018-10-25 18:29:56 +00:00
|
|
|
|
2020-11-27 18:02:05 +00:00
|
|
|
```js
|
|
|
|
(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);
|
|
|
|
}
|
|
|
|
);
|
2018-10-25 18:29:56 +00:00
|
|
|
```
|
|
|
|
|
2020-11-27 18:02:05 +00:00
|
|
|
"keywords" field should be an Array
|
2018-10-25 18:29:56 +00:00
|
|
|
|
2020-11-27 18:02:05 +00:00
|
|
|
```js
|
|
|
|
(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);
|
|
|
|
}
|
|
|
|
);
|
|
|
|
```
|
2018-10-25 18:29:56 +00:00
|
|
|
|
2020-11-27 18:02:05 +00:00
|
|
|
"keywords" should include "freecodecamp"
|
2018-10-25 18:29:56 +00:00
|
|
|
|
2020-11-27 18:02:05 +00:00
|
|
|
```js
|
|
|
|
(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--
|
2018-10-25 18:29:56 +00:00
|
|
|
|
|
|
|
```js
|
2019-10-24 04:38:13 +00:00
|
|
|
/**
|
|
|
|
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.
|
|
|
|
*/
|
2018-10-25 18:29:56 +00:00
|
|
|
```
|