Skip to content

Phentality/react-mesto-api-full-gha

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 

Repository files navigation

🧩 Mesto (версия с фронтендом и бэкендом)

Это продолжение работы над проектом Mesto: интерактивная страница, куда можно добавлять фотографии, удалять их и ставить лайки. Работа выполнена в рамках серии проeктных работ на курсе Web-разработчик (Яндекс Практикум).

✨ Демо приложения

  • 💻 Часть с фронтендом

Открыть в браузере приложение Mesto

  • 🖥 Сервер с API

https://api.phentality.nomoredomainsrocks.ru

🏚️ Структура проекта

  1. backend/ - бэкенд для сервера с API
  2. frontend/ - фронтенд на React.js

💥 Дополнительные возможности этой версии

Фронтенд

  • React-приложение адаптировано под рабочий API-сервер (вместо учебного сервера Я.Практикума в предыдущих версиях)
  • вся функциональность приложения сохранена

Бэкенд

  • фронтенд и бэкенд на одном сервере с доступом через домен
  • сбор логов запросов к серверу в файл request.log
  • сбор логов ошибок на сервере в файл error.log
  • доступ к серверу через ssh
  • автоматический запуск/перезапуск БД на сервере
  • автоматический запуск/перезапуск сервера
  • настроенный файрвол для работы с портами
  • обработка CORS-запросов на сервере
  • доступ через https

👩‍💻 Стек технологий

  • сервер на Ubuntu в Яндекс.Облаке
  • ssh-ключи для доступа к серверу
  • API-сервер на Node.js + express.js
  • база данных на MongoDB + Mongoose
  • обновление кода на сервере через Git
  • менеджер процессов на сервере pm2
  • раздача фронтенда через nginx
  • обратный прокси-сервер на nginx
  • файрвол ufw
  • SSL-сертификаты
  • хранение переменных окружения в .env-файле

Установка и запуск

Для запуска проекта в своей среде разработке следуйте следующим инструкциям:

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

git clone https://github.com/Phentality/react-mesto-api-full-gha.git

Бэкенд

Перейдите в директорию backend и установите пакеты NPM

npm install

Запустить сервер

npm run dev

Фронтенд

Перейдите в директорию frontend и установите пакеты NPM

npm install

Запустите приложение

npm start

Если у вас не произошел автоматический переход в браузер с открытым приложением, введите в адресную строку самостоятельно - http://localhost:3000 В процессе изменения кода страница будет автоматически перезагружаться.

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

✅ Завершено

About

Сервис Mesto: интерактивная страница, куда можно добавлять фотографии, удалять их и ставить лайки.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors