Написать NextJs приложение
- Опубликовано 1 год назад
- Просмотры 13
- Закончить проект
50,00₽
Описание
Необходимо создать простое NextJs приложение на TS
Данные будут предоставлены в виде файла в формате JSON и CSV products.json и products.csv
Приложение должно запускаться как напрямую из папки с исходным кодом (ниже будут детали),так и из Docker контейнера.
Данные нужно загружать на backend из файла products.csv и предоставлять во frontend через созданное API (не через mock сервер)
Приложение в обоих случаях (fullstack и frontend) должно быть контейнеризированно с помощью Docker
Данные должны быть представлены в следующем виде:
На главной странице ("/") должна быть столбчатая диаграмма где для каждого месяца из набора доступных данных
отражено 2 столбца один количество продукции (в тоннах) произведенной фабрикой А, другой количество продукции (в тоннах) произведенной для фабрике Б
Над графиком должен быть фильтр позволяющий выбрать какую продукцию учитывать всю, Продукт 1 или Продукт 2
Выбранное значение фильтра должно быть сохранено в браузере. Последнее выбранное значение должно автоматически устанавливаться при заходе на страницу
Фабрике A в данных соответсвуют строки с factory_id = 1
Фабрике Б в данных соответсвуют строки с factory_id = 2
Поле date содержит дату производства продукции в формате d/m/yyyy
Объем продукции типа "Продукт 1" сохранен в поле product1 в килограммах
Объем продукции типа "Продукт 2" сохранен в поле product2 в килограммах
При клике на любом из столбцов, нужно перейти на страницу /details/<factory id>/<month number> с круговой диаграммой показывающей сколько продукции типа 1 и 2 было произведено на фабрике <factory id> в месяц <month number>
Например, /details/1/2 производство продукции на Фабрике A в феврале.
Должен поддерживаться обратный переход с детальной на основную страницу с помощью кнопки back браузера.
Основные компоненты должны быть отцентрованны на экране и оставаться в центре при изменении размеров окна.
Приложение должно быть написано на JavaScript и React, можно использовать любые JavaScript библиотеки.
Код должен собираться в MacOS или Linux
Приложение должно разрабатываться так, как если бы готовилось на production
В корневой директории с кодом должен быть текстовый файл AUTHOR содержащий имя и фамилию автора
Код будет запускаться и тестироваться на MacOS в Chrome
На машине будет установлены Docker Desktop, Node.js v16, NPM v8, json-server
После клонирования кода на тестовую машину в директорию ugmk_test_app должны выполняться следующие команды:
npm install установлены все зависимости
npm run start приложение запускается на локальной машине по адресу localhost:3000
npm run dockerize создаётся docker image c именем ugmk_test_app
npm run start-container запускает контейнер с именем ugmk_test_app, приложение доступно по адресу localhost:3000 При завершении приложения, контейнер должен быть автоматически удалён
Данные будут предоставлены в виде файла в формате JSON и CSV products.json и products.csv
Приложение должно запускаться как напрямую из папки с исходным кодом (ниже будут детали),так и из Docker контейнера.
Данные нужно загружать на backend из файла products.csv и предоставлять во frontend через созданное API (не через mock сервер)
Приложение в обоих случаях (fullstack и frontend) должно быть контейнеризированно с помощью Docker
Данные должны быть представлены в следующем виде:
На главной странице ("/") должна быть столбчатая диаграмма где для каждого месяца из набора доступных данных
отражено 2 столбца один количество продукции (в тоннах) произведенной фабрикой А, другой количество продукции (в тоннах) произведенной для фабрике Б
Над графиком должен быть фильтр позволяющий выбрать какую продукцию учитывать всю, Продукт 1 или Продукт 2
Выбранное значение фильтра должно быть сохранено в браузере. Последнее выбранное значение должно автоматически устанавливаться при заходе на страницу
Фабрике A в данных соответсвуют строки с factory_id = 1
Фабрике Б в данных соответсвуют строки с factory_id = 2
Поле date содержит дату производства продукции в формате d/m/yyyy
Объем продукции типа "Продукт 1" сохранен в поле product1 в килограммах
Объем продукции типа "Продукт 2" сохранен в поле product2 в килограммах
При клике на любом из столбцов, нужно перейти на страницу /details/<factory id>/<month number> с круговой диаграммой показывающей сколько продукции типа 1 и 2 было произведено на фабрике <factory id> в месяц <month number>
Например, /details/1/2 производство продукции на Фабрике A в феврале.
Должен поддерживаться обратный переход с детальной на основную страницу с помощью кнопки back браузера.
Основные компоненты должны быть отцентрованны на экране и оставаться в центре при изменении размеров окна.
Приложение должно быть написано на JavaScript и React, можно использовать любые JavaScript библиотеки.
Код должен собираться в MacOS или Linux
Приложение должно разрабатываться так, как если бы готовилось на production
В корневой директории с кодом должен быть текстовый файл AUTHOR содержащий имя и фамилию автора
Код будет запускаться и тестироваться на MacOS в Chrome
На машине будет установлены Docker Desktop, Node.js v16, NPM v8, json-server
После клонирования кода на тестовую машину в директорию ugmk_test_app должны выполняться следующие команды:
npm install установлены все зависимости
npm run start приложение запускается на локальной машине по адресу localhost:3000
npm run dockerize создаётся docker image c именем ugmk_test_app
npm run start-container запускает контейнер с именем ugmk_test_app, приложение доступно по адресу localhost:3000 При завершении приложения, контейнер должен быть автоматически удалён
Опубликовано 1 год назад
Информация
Посещаемость:
557
Дата регистрации:
10 лет назад