Skip to content

Rs Lang (review PR)#31

Open
Iogsotot wants to merge 442 commits intomasterfrom
develop
Open

Rs Lang (review PR)#31
Iogsotot wants to merge 442 commits intomasterfrom
develop

Conversation

@Iogsotot
Copy link
Owner

@Iogsotot Iogsotot commented Apr 6, 2021

  1. Task: https://github.com/rolling-scopes-school/tasks/blob/master/tasks/react/react-rslang.md
  2. Screenshot:
    image

Уважаемые кроссчекеры! прошу обратить внимание, что 21.04 был залит коммит с README для выступления на презентации, это не коммит для работы приложения, поэтому не влияет на получение штрафов

  1. Deploy: https://rslang-team31.netlify.app/ / Backend: https://rslang-2020q3.herokuapp.com/
  2. Видео: https://youtu.be/jpMpVQut-1I
  3. Done 14.05.2021 / deadline 14.05.2021
  4. Score: 580 / 600
    480 / 500 за приложение
    100 / 100 за презентацию

Уважаемый кросчекер, если вы не хотите заводить свою учётку, то можете воспользоваться нашим тестовым пользователем (обращаем внимание, что при одновременном логине нескольких людей под одним пользователем, приложение может вести себя не так как задумывали его создатели)
Тестовый пользователь:
имя: test
email: test@mail.ru
пароль: testTEST1

Если есть вопросы, предложения и тд - пиши в дискорд IogSotot#6456 =)

Снимок экрана 2021-04-15 в 00 43 19

Вёрстка, дизайн, UI +40

  • вёрстка, дизайн, UI главной страницы приложения +10

Снимок экрана 2021-04-15 в 00 37 07

  • вёрстка, дизайн, UI электронного учебника +10

Снимок экрана 2021-04-15 в 00 44 20

  • вёрстка, дизайн, UI страницы статистики +10

Снимок экрана 2021-04-15 в 00 46 13

  • оригинальный интересный качественный дизайн приложения +10
    Этот дизайн крайне долго рисовался, потом улучшался, продумывались мелочи и тд, так же дизайнерских навыков потребовала одна из фич проекта - тёмная тема, после её реализации вся команда сразу перешла на неё.

Снимок экрана 2021-04-15 в 00 47 21

Главная страница приложения +40

  • меню +10

Снимок экрана 2021-04-15 в 00 48 03

Снимок экрана 2021-04-15 в 00 48 35

  • описание возможностей и преимуществ приложения +10

Снимок экрана 2021-04-15 в 00 50 04

  • видео с демонстрацией работы приложения +10
    https://youtu.be/jpMpVQut-1I
  • раздел "О команде" +10

Снимок экрана 2021-04-15 в 00 52 14

Электронный учебник +50

  • страницы и разделы учебника +10

Снимок экрана 2021-04-15 в 00 53 21

  • настройки +10

Снимок экрана 2021-04-15 в 00 55 43

Снимок экрана 2021-04-15 в 00 55 43

  • список слов +20

Снимок экрана 2021-04-15 в 00 54 16

  • навигация по страницам и разделам учебника +10

Снимок экрана 2021-04-15 в 00 56 33

Словарь +40

Доступен только авторизированным пользователям (согласно ТЗ)

  • раздел "Изучаемые слова" +20

Снимок экрана 2021-04-15 в 00 58 14

  • раздел "Сложные слова" +10

Снимок экрана 2021-04-15 в 00 58 14

  • раздел "Удалённые слова" +10

Снимок экрана 2021-04-15 в 00 58 14

Мини-игры +200

Мини-игра "Спринт" +50

  • игра является улучшенной версией прототипа как с точки зрения внешнего вида и оформления, так и удобства работы. Присутствует дополнительный функционал, улучшающий качество приложения +50
    Отличие от оригинальной игры - автопроговаривание слов, позволяет включить слуховую память при изучении слов.

Снимок экрана 2021-04-15 в 01 00 03

Мини-игра "Саванна" +50

  • игра является улучшенной версией прототипа как с точки зрения внешнего вида и оформления, так и удобства работы. Присутствует дополнительный функционал, улучшающий качество приложения +50
    Отличие от оригинальной игры - возможность управления звуком (вкл/выкл) - помогает сосредоточиться на дожде из слов, если звуковое сопровождение уже начало напрягать.

Снимок экрана 2021-04-15 в 01 00 57

Мини-игра "Паззл" +50

  • игра является улучшенной версией прототипа как с точки зрения внешнего вида и оформления, так и удобства работы. Присутствует дополнительный функционал, улучшающий качество приложения +50
    Это оригинальная игра - она вся как одна большая фича. Обратите внимание на приятную механику drag'n'drop

Снимок экрана 2021-04-15 в 01 01 33

Мини-игра "Аудиовызов" +50

  • игра является улучшенной версией прототипа как с точки зрения внешнего вида и оформления, так и удобства работы. Присутствует дополнительный функционал, улучшающий качество приложения +50
    Отличие от оригинальной игры - более удобный интерфейс, отмечены хоткеи

Снимок экрана 2021-04-15 в 01 02 09

Страница статистики +20 (из 40)

  • краткосрочная статистика +10
  • долгосрочная статистика +10
    вёрстка есть, фронт есть, бэка нет =(

Снимок экрана 2021-04-15 в 01 03 00

Бекенд +60

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

  • собственная копия бекенда размещена на heroku или другом бесплатном хостинге +20
  • приложение использует данные из собственного API +10
  • при регистрации нового пользователя можно указать его имя. При перезагрузке клиента данные о пользователе сохраняются +10
  • при регистрации нового пользователя можно загрузить фото +10
  • реализована авторизация и разавторизация пользователя. Основная часть приложения доступна без авторизации. Авторизация необходима только для хранения долгосрочной статистики и формирования словаря +10

Снимок экрана 2021-04-15 в 01 03 30

Снимок экрана 2021-04-15 в 01 05 11

Дополнительный функционал +30**

  • реализован не указанный в задании дополнительный функционал. Оценивается оригинальная идея, вклад в улучшение качества приложения, полезность, сложность и качество выполнения +20

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

  • Проделана очень большая работа с анимациями, в тч подключена, настроена и использована отдельная библиотека - можете оценить на промо странице.

  • Реализовано полноэкранное видео на странице авторизации

Снимок экрана 2021-04-15 в 01 04 16

  • написано не меньше 10 юнит-тестов, использующих различные методы jest +10
    Вообще их было больше, но мы оставили только самые классные и несущие смысловую нагрузку

Снимок экрана 2021-04-15 в 01 06 23

Снимок экрана 2021-04-15 в 01 06 23

Фух, ты дочитал до конца этот PR, поздравляю!

Iogsotot and others added 30 commits April 5, 2021 01:07
 2 - snapshots, 4 - function thunk, 1 - initialState reducers, 2 - reducer for actions, 2 - async actions
# Conflicts:
#	frontend/package.json
#	frontend/public/index.html
#	frontend/src/App.tsx
#	frontend/src/components/Footer/Footer.tsx
#	frontend/src/components/Games/Sprint/Frogs/Frogs.scss
#	frontend/src/components/Games/Sprint/Sprint.scss
#	frontend/src/components/Games/Sprint/Sprint.tsx
#	frontend/src/components/Games/Sprint/ToggleButton/ToggleButton.scss
#	frontend/src/components/Games/Sprint/ToggleButton/ToggleButton.tsx
#	frontend/src/components/PromoPage/PromoPage.tsx
#	frontend/src/components/WordList/WordList.tsx
#	frontend/src/constants/index.ts
#	frontend/src/index.scss
#	frontend/src/index.tsx
#	frontend/src/react-app-env.d.ts
#	frontend/src/store/action-creators/words.ts
{ currentLocation !== sprint
&& currentLocation !== savannah
&& currentLocation !== puzzle
&& currentLocation !== audiocall && (
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Usual, this verifies at routing (Route component)
https://reactrouter.com/web/api/Route/path-string-string

Copy link
Owner Author

@Iogsotot Iogsotot Apr 22, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can't understand how I can use 'false' or 'not' this way.
I can do smth like this path={'/home' | '/users' | '/widgets'}
But I need this path={![sprint && savannah && puzzle && audiocall]} (not valid)

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

and if I go to another page I need to refresh the page to get the required rendering of the components

Copy link
Collaborator

@MSt1ch MSt1ch Apr 23, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You need to add only the correct path where you expect your component like:
<Route exact path=['/', '/dictionary/learning/:tabId/:pageId', 'textbook/:tabId/:pageId', '/stats', '/auth']> <Footer /> </Route>
Try to add this component to your App component.

@johnneon johnneon requested a review from yastrdimaepam April 24, 2021 11:03
@Iogsotot Iogsotot requested review from polyanka and yuliaHope April 24, 2021 11:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants