---
id: 587d824a367417b2b2512c43
title: Personal Library
challengeType: 4
isRequired: true
videoUrl: ''
localeTitle: Персональная библиотека
---

## Description
<section id="description"> Создайте полное приложение JavaScript для стека, которое функционально похоже на это: <a href="https://spark-cathedral.glitch.me/" target="_blank">https://spark-cathedral.glitch.me/</a> . Работа над этим проектом предполагает, что вы будете писать свой код на Glitch в нашем стартовом проекте. После завершения этого проекта вы можете скопировать свой общедоступный URL-адрес глюка (на домашнюю страницу вашего приложения) на этот экран, чтобы проверить его! При желании вы можете написать свой проект на другой платформе, но должны быть общедоступны для нашего тестирования. Запустите этот проект на Glitch, используя <a href="https://glitch.com/#!/import/github/freeCodeCamp/boilerplate-project-library/">эту ссылку</a> или клонируйте <a href="https://github.com/freeCodeCamp/boilerplate-project-library/">этот репозиторий</a> на GitHub! Если вы используете Glitch, не забудьте сохранить ссылку на ваш проект где-нибудь в безопасности! </section>

## Instructions
<section id="instructions">
</section>

## Tests
<section id='tests'>

```yml
tests:
  - text: Ничто из моего сайта не будет кэшироваться в моем клиенте.
    testString: ''
  - text: 'Заголовки скажут, что сайт работает на «PHP 4.2.0», хотя это не так (в качестве меры безопасности).'
    testString: ''
  - text: 'Я могу опубликовать заголовок в / api / books, чтобы добавить книгу, и будет возвращен объект с названием и уникальным _id.'
    testString: ''
  - text: 'Я могу получить / api / books, чтобы получить массив из всех книг, содержащих title, _id и commentcount.'
    testString: ''
  - text: 'Я могу получить / api / books / {id} для извлечения одного объекта книги, содержащей _title, _id, и массив комментариев (пустой массив, если нет комментариев).'
    testString: ''
  - text: 'Я могу опубликовать комментарий в / api / books / {id}, чтобы добавить комментарий к книге, и будет возвращен объект книги, похожий на get / api / books / {id}, включая новый комментарий.'
    testString: ''
  - text: 'Я могу удалить / api / books / {_ id}, чтобы удалить книгу из коллекции. При успешном завершении возвращается «удалять».'
    testString: ''
  - text: 'Если я попробую запросить книгу, которая не существует, мне будет возвращена «книга не существует».'
    testString: ''
  - text: 'Я могу отправить запрос на удаление в / api / books, чтобы удалить все книги в базе данных. При успешном завершении возвращается «полное удаление успешно».'
    testString: ''
  - text: Все 6 необходимых функциональных тестов являются полными и проходят.
    testString: ''

```

</section>

## Challenge Seed
<section id='challengeSeed'>

</section>

## Solution
<section id='solution'>

```js
// solution required
```
</section>
