Данный проект является дипломной работой на курсе веб-разработчик Яндекс.Практикума.
Данное серверное приложение предназначено для храниния и обмена файлами с вэб-приложением Movies-explorer.
В нём представлены:
- Модели (схемы) для базы данных;
- Контроллеры;
- Роуты.
- Регистрация;
- Авторизация;
- Обновление данных пользователя;
- Получение информации о текущем пользователе;
- Получение списка фильмов;
- Создание фильма;
- Удаление фильма;
- Обработка ошибок;
- Валидация входящих данных.
- NodeJS
- Express
- MongoDB
- Mongoose
- Запись токена в httpOnly куку.
/routes
— папка с файлами роутера;
/controllers
— папка с файлами контроллеров пользователя и фильма;
/models
— папка с файлами описания схем пользователя и фильма;
/middlewares
— папка с мидлварами:
- аутентификация;
- центральный обработчик ошибок;
- логгер;
- валидация.
/errors
— папка с кастомными ошибками;
/utils
— папка с константами и файлом конфига.
npm i
— установка зависимостей;
mongod
— запускает mongodDB;
npm run start
— запускает сервер;
npm run dev
— запускает сервер с hot-reload.