Skip to content

mityourik/mesto

Repository files navigation

Проектная работа: Mesto. Девятый спринт

Посмотреть мою работу

Описание проекта

В данной проектной работе продолжается работа над проектом "Mesto", написанного на чистом JavaScript в соответствии с принципами ООП. Мы углубились в работу с API, реализовали возможность добавления и удаления карточек через сервер, ставить и убирать "лайки", а также обновлять информацию о пользователе и его аватар. Приложение написано с использованием асинхронного кода. Внедрена практика написания кода в соответствии со стандартом ES6.

Содержание

Запуск проекта

Для просмотра проекта на локальной машине выполните следующие шаги:

  1. Клонируйте репозиторий на локальную машину.
  2. Установите необходимые зависимости с помощью команды npm install.
  3. Запустите проект с помощью команды npm run dev.
  4. Откройте веб-браузер и перейдите по адресу http://localhost:8080.

Используемые технологии

В данном проекте мы использовали следующие технологии:

  • HTML
  • CSS
  • JavaScript (ООП, асинхронные функции, ES6)
  • Webpack

Структура проекта

В проекте используется модульная структура, разделяющая код на отдельные файлы и классы. Вот основные файлы и папки в проекте:

  • src - папка, содержащая исходный код проекта.
    • index.js - главный файл, в котором создаются экземпляры классов и добавляются обработчики.
    • index.html - главный HTML-файл проекта.
    • index.css - файл со стилями CSS.
    • components - папка с компонентами главного файла со скриптами JavaScript.
      • Api.js - класс для работы с API.
      • Card.js - класс для создания и управления карточками.
      • Section.js - класс для отрисовки элементов на странице.
      • Popup.js - базовый класс для работы с попапами.
      • PopupWithImage.js - класс, наследующийся от Popup, для попапа просмотра карточки.
      • PopupWithForm.js - класс, наследующийся от Popup, для работы с формой в попапе.
      • PopupWithQuestion.js - класс, наследующийся от Popup, для попапа с подтверждением действия.
      • UserInfo.js - класс для управления отображением информации о пользователе на странице.
    • utils - папка с вспомогательными данными
      • constants.js - файл с переменными с массивом карточек и настройками для валидации форм и селекторов элементов

Команда проекта

Проект выполнил Дмитрий Орлов

Лицензия

не применимо