Skip to content

mksotto/test-task

Repository files navigation

Тестовое задание на динамическую подгрузку данных

О проекте

Проект написан на современном стеке - React/TypeScript. Сборщик - Vite. Препроцесор стилей - SCSS.

В ходе проекта стояла задача реализовать несколько важных аспектов:

  • динамическая подгрузка данных с сервера по api
  • создание новой записи в таблице через форму, с отправкой данных по api и её добавление в таблицу
  • написание тестов (в том числе покрывающих сетевые запросы)

В качестве хранилища данных используется json-файл, в качестве сервера - библиотека json-server

Для UI-компонентов использовалась библиотека Ant Design

Для кеширования запросов и работы с динамической подгрузкой данных используется популярное решение Tanstack Query. Эта библиотека имеет ряд преимуществ, перед написанием этой же логики самостоятельно:

  • готовая оптимизированная логика
  • уменьшение общего количества кода, а следовательно и времени, затраченного на разработку и отладку
  • производительность

Все это является очень важными аспектами с точки зрения бизнес логики.

Поскольку TanStack Query уже предоставляет кэширование, инвалидацию и фоновое обновление данных, добавление Redux/Zustand приведёт к избыточности без реальной пользы. Однако, если в будущем потребуется расширить функционал, можно будет легко интегрировать стор.

Локальная разработка

  1. Клонирование репозитория

     git clone https://github.com/mksotto/test-task.git
  2. Установка зависимостей:

    npm ci
  3. Запуск backend:

    npm run db-start
  4. Запуск frontend:

    npm run dev
  5. Тестирование:

    npm test

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors