Skip to content

PotatoHD404/daily-mephi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

О проекте Daily-Mephi

Daily-Mephi - это студенческий портал, разрабатываемый для оставления отзывов о преподавателях и загрузки учебных материалов. В данный момент проект находится в стадии разработки, однако вы можете посетить сайт https://daily-mephi.ru/, а также ознакомиться с кодом на https://github.com/PotatoHD404/daily-mephi. Проект развернут при помощи Terraform на Yandex Cloud.

Основные технологии, используемые в проекте:

  • React
  • TypeScript
  • Next.js
  • Prisma
  • CockroachDB
  • tRPC

Для тестирования используются:

  • Jest (интеграционные и unit-тесты)
  • Storybook (тесты компонентов React)

Для развертывания проекта в облаке, а также для тестирования и статического анализа настроены GitHub Actions.

Основной сложностью при реализации данного проекта была настройка Terraform и GitHub Actions, так как не была найдена готовая реализация для развертывания Next.js в Yandex Cloud.

В процессе разработки были также разработаны:

  1. Система загрузки файлов в Notion.
  2. Рендеринг React-компонентов в PNG.
  3. ORM для Yandex Database на Node.js.
  4. Библиотека для представления бэкенда на Next.js в виде классов, чтобы они были похожи на бэкенд на Spring, а также система для dependency injection в этих классах.

Установка

Для установки необходимо выполнить следующие команды:

yarn install

Запуск проекта

Для запуска проекта необходимо установить Node.js и Yarn.

Для запуска проекта в режиме разработки необходимо выполнить следующие команды:

yarn dev

Для запуска проекта в режиме production необходимо выполнить следующие команды:

yarn build
yarn start

Запуск тестов

Для запуска тестов необходимо выполнить следующие команды:

yarn test