Skip to content

πŸ—ΊοΈ БэкСнд ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡Π΅ΠΊ с Ρ„ΠΎΡ‚ΠΎ ΠΈ описаниСм + авторизация

maratdev/express-mesto-gha

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Mesto бэкСнд

Backend Ρ‡Π°ΡΡ‚ΡŒ сСрвиса, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ Ρ„ΠΎΡ‚ΠΎ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ. Live demo

Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ:

Express Node.js MongoDB Postman Eslint jwt

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»:

  • РСгистрация POST: /signup
  • Авторизация POST: /signin
  • ОбновлСниС Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ PATCH: /users/me
  • ОбновлСниС Π°Π²Π°Ρ‚Π°Ρ€Π° PATCH: /users/me/avatar
  • ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ списка всСх ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ GET: /users
  • ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΏΠΎ ID GET: /users/userID
  • ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ GET: /users/me
  • ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ списка всСх ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡Π΅ΠΊ GET: /cards
  • Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ POST: /cards
  • Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ DELETE: /cards/cardID
  • ΠŸΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° Π»Π°ΠΉΠΊΠ° PUT: /cards/cardID/likes
  • БнятиС Π»Π°ΠΉΠΊΠ° DELETE: /cards/cardID/likes
  • Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Π°Ρ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок
  • Валидация входящих Π΄Π°Π½Π½Ρ‹Ρ…
  • Π—Π°Ρ‰ΠΈΡ‚Π° API Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ

О Ρ‡Ρ‘ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚?

Π”Π°Π½Π½ΠΎΠ΅ сСрвСрноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΎ для храниния ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ с вэб-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Mesto.

  • Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π·Π°Ρ€Π΅Π³Π΅ΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈ Π·Π°Π»ΠΎΠ³ΠΈΠ½ΠΈΡ‚ΡŒΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠΎΡ‡Ρ‚Ρ‹ ΠΈ пароля. Π’ΠΎΠΊΠ΅Π½ для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ хранится 7 Π΄Π½Π΅ΠΉ.
  • Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π΅ΡΡ‚ΡŒ поля name, about, avatar, email, password. Π˜Ρ… ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ рСгистрации. Если Π½Π΅ Π·Π°Π΄Π°Ρ‚ΡŒ name, about ΠΈΠ»ΠΈ avatar, Ρ‚ΠΎ установятся Π΄Π΅Ρ„ΠΎΠ»Ρ‚Π½Ρ‹Π΅.
  • Поля name, about, avatar ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ послС рСгистрации.
  • МоТно ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠ°Ρ‚ΠΎΡ‡ΠΊΠΈ Π΅ΡΡ‚ΡŒ Π΅ΡΡ‚ΡŒ поля name, link (ссылка Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ), owner (id создатСля ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ), createdAt (Π΄Π°Ρ‚Π° создания ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ) ΠΈ массив likes (Π»Π°ΠΉΠΊΠΎΠ² ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ).
  • ΠšΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π»Π°ΠΉΠΊΠ°Ρ‚ΡŒ.
  • Поля Π²Π°Π»ΠΈΠ΄ΠΈΡ€ΡƒΡŽΡ‚ΡΡ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ссылки ΠΈΠ»ΠΈ email).

Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ

/routes β€” ΠΏΠ°ΠΏΠΊΠ° с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ Ρ€ΠΎΡƒΡ‚Π΅Ρ€Π°
/controllers β€” ΠΏΠ°ΠΏΠΊΠ° с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ
/models β€” ΠΏΠ°ΠΏΠΊΠ° с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ описания схСм ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ

ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅, ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ нСобходимости Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ

Запуск ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

npm run start β€” запускаСт сСрвСр
npm run dev β€” запускаСт сСрвСр с hot-reload

Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ:

git clone https://github.com/maratdev/express-mesto-gha/

About

πŸ—ΊοΈ БэкСнд ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡Π΅ΠΊ с Ρ„ΠΎΡ‚ΠΎ ΠΈ описаниСм + авторизация

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published