Skip to content

Mesto Backend - это серверная часть приложения Mesto, предоставляющая API для работы с пользователями и карточками. Реализованная на Node.js и MongoDB, она обеспечивает взаимодействие с базой данных и обработку запросов клиентской части приложения Mesto.

Notifications You must be signed in to change notification settings

Dmitry145528/express-mesto-gha

Repository files navigation

Проект Mesto бэкенд

Mesto Backend - это серверная часть приложения Mesto, предоставляющая API для работы с пользователями и карточками. Реализованная на Node.js и MongoDB, она обеспечивает взаимодействие с базой данных и обработку запросов клиентской части приложения Mesto.

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

Что сделал:

  • Реализовал на Node.js и Express.js, сервер обрабатывает запросы, взаимодействует с базой данных MongoDB и обрабатывает ошибки.

Реализованный функционал:

  • Реализованы роуты и контроллеры для работы с пользователями (регистрация, авторизация, получение информации о текущем пользователе, обновление данных пользователя).

  • Реализована аутентификация с использованием JWT (JSON Web Token) для безопасной передачи информации между клиентом и сервером.

  • Реализованы роуты и контроллеры для работы с карточками (создание, получение, обновление, удаление карточек).

  • Реализованы мидлвары для обработки запросов, аутентификации и обработки ошибок.

  • Взаимодействие с базой данных MongoDB для сохранения пользовательских данных и карточек.

Технологии:

  • Node.js: Платформа для выполнения JavaScript кода на сервере.
  • Express.js: Фреймворк для создания веб-приложений на Node.js.
  • MongoDB: Документоориентированная NoSQL база данных.
  • JWT (JSON Web Token): Механизм аутентификации для безопасной передачи информации между клиентом и сервером.
  • dotenv: Модуль для загрузки переменных среды из файла .env.
  • mongoose: ODM (Object Data Modeling) для работы с MongoDB через Node.js.
  • cookie-parser: Middleware для работы с куки в Express приложениях.
  • celebrate и Joi: Библиотеки для валидации данных и обработки ошибок в Express.js приложениях.
  • errors из celebrate: Middleware для обработки ошибок валидации данных.
  • logger middleware: Middleware для логирования запросов и ошибок.

Инструкция по запуску:

  1. Клонируйте репозиторий:

    git clone git@github.com:Dmitry145528/express-mesto-gha.git
    git clone https://github.com/Dmitry145528/express-mesto-gha.git
    
  2. Перейдите в директорию проекта, выполнив команду:

    cd express-mesto-gha

  3. Установите все необходимые зависимости проекта, выполнив команду:

    npm install

  4. Создайте файл .env в корневой директории проекта и добавьте следующие переменные среды:

    PORT=3000

    MONGO_URL=mongodb://127.0.0.1:27017/mestodb

  5. Вы можете запустить сервер:

    npm run start

  6. Вы можете запустить сервер с hot-reload:

    npm run dev

Требования

Перед началом убедитесь, что у вас установлены:

Статус разработки:

Завершено

Дальнейшая разработка ведётся в репозитории Mesto (версия с фронтендом и бэкендом)

About

Mesto Backend - это серверная часть приложения Mesto, предоставляющая API для работы с пользователями и карточками. Реализованная на Node.js и MongoDB, она обеспечивает взаимодействие с базой данных и обработку запросов клиентской части приложения Mesto.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published