Вы должны реализовать дашборд ментора школы The Rolling Scopes в виде странички на github pages.
Дашборд должен содержать следующую информацию
- список студентов, которых курирует ментор
- список тасков студентов, которые должны делать студенты
- таблица студент / задания должны быть подсвечена следующим образом:
- зеленый цвет - проверенные задания
- желтый цвет - задания сейчас в работе у студентов (status - in progress)
- красный цвет - задания, которые ментору надо проверять (status - checking)
- темно-красный цвет - задания, которые уже надо было сдать, но их не сдали (status - checked)
- серая подсветка / притухшие - задания, которые еще не надо делать (status - no status / todo)
Выбор ментора должен происходить из всех менторов набора, которые содержатся в отдельном excel файле, используя контрол автокомплита (https://bestofjs.org/projects/react-select или https://bestofjs.org/projects/chosen). Выбранный ментор должен сохраняться в localStorage и подставляться при следующей загрузке страницы.
- Должно работать в Chrome
- Можно гуглить, общаться между собой и пользоваться stackoverflow
- можно использовать lodash
- задание должно использовать React
- написать nodejs скрипт который
- обработает данные с помощью библиотеки node-xlsx из папки с данными . Можно использовать любую другую библиотеку для чтения excel файлов.
- будет использовать файлы для обработки библиотекой - Tasks, Mentor score, Mentor-students pairs (информация по парам ментор - студент + информация по соотвествию имени / фамилии ментора его гитхаб аккаунту )
- исправит возникающие ошибки в данных (неправильное написание гитхаб аккаунтов, неправильные пары ментор-студент). Надо самому решать что исправлять скриптом, а что руками в исходных файлах. Если правятся исходные файлы - надо указать в readme при сдаче таска
- соединит (смержит, заджоинит (join)) данные из google drive папки
- по студентам ментора
- по выставленным оценкам
- получит json файл с нужными данными
- загрузит данные на html страницу
- с помощью react и react component нарисовать дашборд, используя получившийся json
- сбилдить веб паком и выложить сбилженные файлы на github pages
- pull request должен содержать
- nodejs script, инструкцию как им пользоваться,
- получившийся json
- js файл с реакт компонентой
- html страницу, которая подключает реакт, js файл с реактом, загружает json файл с данными, которые отображает react компонента
- запостить ссылку на гитхаб страницу + PR в форму
- Максимальный бал за задание - 140
- Реализована генераций json файла - +25
- Реализовано подключение json файла на страницу и вывод списка студентов ментора - +10
- Реализовано подключение json файла на страницу и вывод списка тасков ментора - +10
- Реализовано подключение json файла на страницу и выбор ментора из контрола выбора менторов - +10
- Реализована подгрузка выбранного ментора из локал стораджа - +5
- Реализована цветовая индикация +10
- Требования к репозиторию, коммитам и PR выполены +5 баллов
- Тесты покрывают следующую фунциональность
- функции мержа данных - +10
- правильность генерирования итогового json +10
- факт рендера данных - +5
- Реализован логин и выбор ментора по github аккаунту +30
- до -50 баллов за нарушение stage2-tasks-requirements
- если сделан сервер, который раз в пару минут проверяет гугл документ и умеет отдавать свежий json на github pages - +10
Ваш ментор.
https://www.youtube.com/watch?v=YljG0j-9Vko - видео с разбором задания (первый час). Второй час - небольшой лайфкодинг аналогичного задания.