Skip to content

HireHoffee/Personal-Blog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Тестовое задание для разработчика Node.js

Необходимо разработать фронтенд и бекенд (REST API) для личного блога

Требования к заданию:

Приложение представляет собой страницу, на которой могут делать записи любые авторизованные пользователи.

  1. Необходимо реализовать регистрацию и авторизацию пользователя, а также проверку JWT-токена при внесении записей на страницу.
  2. Запись блога содержит:
    1. Дата записи.
    2. Сообщение: может содержать как текст, так и медиа (картинки или видео).
    3. Автор сообщения.
  3. Автор записи может редактировать или удалять запись.
  4. Необходимо выполнить деплой сервера для публичного доступа (можете использовать heroku или любой другой бесплатный хостинг).
  5. Необходимо написать документацию к эндпоинтам (вручную или сгенерировать из кода).

Нужно использовать:

  • Должна использоваться реляционная база данных.
  • Express js/fastify.
  • ORM (type ORM, sequelize или другая на ваш выбор).
  • React.

Будет плюсом:

  • Typescript.
  • Docker.
  • Eslint, Prettier, Husky.

Можно использовать:

  • Swagger.
  • Библиотеки для jwt авторизации.
  • CSS фреймворки.
  • Material Ui, Ant Design или другие Ui библиотеки.

Нельзя использовать:

  • Next.js.

Запуск

Ручной

  • Клонировать репозиторий git clone
  • Установить зависимости в /client и /server через npm install
  • Добавить .env файлы в /client и /server
    • client:
    • VITE_API_URL = http://localhost:7005
    • server:
    • PORT=7005
    • DATABASE_URL="file:./dev.db"
    • JWT_SECRET=9Bdw38lFl4zOHczrxM8wtRX8QlD4a4Fh
  • Произвести миграции БД npx prisma generate и npx prisma migrate dev --name init в папке /server
  • Запустить фронт и бэк через npm run dev или произвести сборку фронта и запускать только бэк

Через docker

  • Клонировать репозиторий git clone
  • Добавить .env файлы в /client и /server
    • client:
    • VITE_API_URL = http://localhost:7005
    • server:
    • PORT=7005
    • DATABASE_URL="file:./dev.db"
    • JWT_SECRET=9Bdw38lFl4zOHczrxM8wtRX8QlD4a4Fh
  • Выполнить docker-compose build и docker-compose up -d

Releases

No releases published

Packages

No packages published