Skip to content

Проект Mesto с системами авторизации и регистрации пользователей

Notifications You must be signed in to change notification settings

bevuxyna/react-mesto-api-full

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Mesto Russia

Веб-приложение для добавления/удаления фотографий, выполненный в рамках учебной проектной работы в Яндекс.Практикум.

Авторизованные пользователи могут:

  • загружать фотографии с подписями;
  • удалять их, если передумали;
  • ставить лайки фотографиям друг друга;
  • редактировать профиль (изменять информацию о себе и аватар).

Tech Stack

HTML  CSS  JavaScript  React  React Router  NodeJS  Express.js  MongoDB  Postman 

Demo

Ссылка на веб-приложение: https://bevuxyna.students.nomoredomains.sbs

Запросы к API осуществляются по адресу: https://api.bevuxyna.students.nomoredomains.sbs

Features

  • Реализована авторизация и аутентификация пользователей.
  • Все роуты, кроме аутентификации и авторизации, защищены авторизацией.
  • Настроено логгирование (запросы и ответы записываются в request.log, ошибки записываются в error.log).
  • Данные, которые приходят в теле и параметрах запроса, валидируются.
  • Ошибки обрабатываются централизованным обработчиком.
  • Для ошибок API созданы классы, расширяющие конструктор Error.
  • Реализовано бережное хранение пароля (пароль хранится в виде хеша, API не возвращает хеш пароля клиенту)

Screenshots

Регистрация нового пользователя: signup.png

Авторизация пользователя: signin.png

Основная страница с карточками: main.png

Редактирование данных пользователя: edit.png

Редактирование аватара: editavatar.png

Добавление новой карточки: newplace.png

API Reference

Регистрация пользователя

  POST /signup

Авторизация пользователя

  POST /signin

Получение информации о текущем пользователе

  GET /users/me

Получение данных всех пользователей из базы

  GET /users

Получение информации о пользователе по _id

  GET /users/:userId

Обновление данных пользователя

  PATCH /users/me

Обновление аватара пользователя

  PATCH /users/me/avatar

Получение всех карточек из базы

  GET /cards

Создание карточки

  POST /cards

Обновление информации о пользователе (email и имя)

  PATCH /users/me

Удалить карточку по _id

  DELETE /cards/:cardId

Поставить лайк карточке

  PUT /cards/:cardId/likes

Удаление лайка с карточки

  DELETE /cards/:cardId/likes 

Run Locally

Клонировать репозиторий:

  gh repo clone bevuxyna/react-mesto-api-full

Установить зависимости:

  npm install

Запустить сервер на localhost:3000:

  npm run start

Запустить сервер на localhost:3000 с hot-reload:

  npm run dev

Guidelines for the project

Макет в Figma с компонентами авторизации и аутентификации

Чек лист #1

Чек лист #2

Чек лист #3

Чек лист #4

About

Проект Mesto с системами авторизации и регистрации пользователей

Topics

Resources

Stars

Watchers

Forks