Проект представляет собой одностраничный сайт - интерактивную страницу, где пользователь может добавлять и удалять фотографии, а также ставить и убирать лайки.
Проект создан в процессе обучения на Яндекс Практикуме.
Демо проекта можно посмотреть по ссылке.
- HTML. Соблюдается корректная семантика.
- CSS. Используются псевдоклассы, присутствует нестандартное позиционирование элементов. Реализованы различные модальные окна, в том числе с валидацией полей форм. Для первоначального обнуления стилей используется файл normalize.css.
- Адаптивная верстка под основные разрешения популярных экранов. Используются флексбоксы, грид-сетки, относительные величины, реализованы брейкпоинты (точки перелома с помощью директивы @media)
- Файлы проекта названы по стандарту БЭМ и структурированы по системе Nested БЭМ.
- JavaScript. Реализовано открытие и закрытие модальных окон по клику, формы добавления карточек и редактирования профиля (а также их валидация), проставление лайков, удаление карточек. Галерея создана путем управления содержимым template, а также используются технологии Promise и fetch запросы на сервер.
- Сборка проекта по Webpack.
Проект запускается локально по адресу http://localhost:8080/ путем клонирования данного репозитория и последовательного запуска команд в терминале.
Предварительно должны быть установлены программы Git, NodeJS и менеджер пакетов npm.
// clone repo
git clone https://github.com/snurnisyan/mesto-project-bootcamp
// go to dir
cd mesto-project-bootcamp
// install dependencies
npm install
// run dev mode - запуск проекта
npm run dev
// build project - создание финальной сборки проекта в папке dist
npm run build