360's People
360's Issues
(B): сущность категории похвалы
Базово предсоздаем 2 категории:
- Технические навыки
- Социальные навыки
- CRUD
Обновить документацию
Текущая документация не учитывает начальную настройку окружения разработчика (сиды и т.д.)
(F): Создать компонент Timeline
Можно, для начала, взять просто базовый дэйтпикер, например, а потом ближе к делу понять как его затюнить
Переименовать сущности интервьюера и интервьюируемого
(F): Переехать с TSLint на ESLint
(B): подключить minio для хранения UGC
Для хранения всяких пользовательских файлов (аватарки, аттачменты, еще что-то)
Админка: базовое создание и редактирование всех сущностей
Взять любой grid и добавить функционал по CRUD'у
(F): Интегрировать список пользователей в ревью
Нужно интегрировать backend из #27, чтобы в интерфейсе отображалась реальная инфа, а не статика
(F): Интегрировать список ревью
Это роуты + wrapper
Мелькает меню до редиректа на авторизацию
Нужно зайти на главную не авторизованным и на долю секунды можно будет увидеть основной интерфейс.
Разбить роуты по пермишенам
Сейчас роуты закрыты ролями. Нужно сделать чуть атомарнее
(B): Создать End-point'ы для списка ревью
Подгрузка данных отдельно для каждого экрана: список ревью, список пользователей в ревью, сами отзывы внутри пользователя.
Это поможет решить проблему просмотра отзывов по одному человеку с переключением даты в таймлайне (типа ретроспективно посмотреть тренд)
Драфт схемы данных, которую обсуждали на первых встречах:
Отображение отправленного ревью
После того как отправлено ревью на пользователя, второй раз его отправить нельзя. Вместо формы-анкеты должна отображаться отправленная (заполненная) анкета read-only
(F): Выбрать и подключить CSS-фреймворк
(F): Создать laylout
Скетч лэйаута. Договорились сделать "гармошку", которая начинается с сущности ревью
, которая отображается во весь экран. После клика по конкретному ревью, оно сжимается до краткого списка ревью (например, название + картинка или типа того) и справа от него появляется в оставшийся размер экрана появляется такой же прямоугольник с сущностью юзеры
, по аналогии потом появляется сущность фидбэк
.
При этом сжатые элементы остаются активными (можно быстро сменить выбранного юзера или ревью), а по клику заголовка сжатого элемента, все элементы справа от него пропадают и он раскрывается на оставшуюся ширину экрана.
@polyakov713 отмечал, что удобно это сделать вложенными роутами и завязать на это такую схему маршрутизации:
/reviews/:review_id/users/:user_id/feedbacks/:feedback_id
(B): хранение шаблонов (анкет)
Шаблон - список вопросов разного типа. Грубо говоря:
{
"name": "template #1",
"items": [
{
"type": "radio",
"items": [...]
},
{
"type": "text"
},
...
]
}
Соответственно, нужно сделать API (CRUD)
Подключить docker для фронта
(F): отображение анкеты
Для ввода ревью по человеку, генерится по данным с бэка. С бэка приходит JSON, формата примерно как в #46
jQuery!
К сожалению, к нам в кодовую базу прокрался jQuery и ругается, что ему чего-то не хватает. Ой :(
(F): страница поиска пользователей
Страница, на которой можно по имени/фамилии найти пользователя и по клику перейти в его профиль
Возможность создать ревью
Подключить s3 - сейчас оно не настроено
Отображение данных о kudos в профиле
Сейчас в названии kudos отображается ID, вместо этого нужно отображать категорию + теги.
Лайк/дизлайк пока что можно убрать
Обновить npm-пакеты до актуального состояния
(B): Создать End-point для авторизации
(F): страница создания похвалы
Форма с полями:
- Категория
- Тэги (предложка с существующими + возможность добавить новый)
- Комментарий (текст)
(B): Сиды-фикстуры
Сейчас довольно геморройно собирать рабочий инстанс, т.к. нет генерации начальных данных, чтоб интерфейсы не были совсем пустые.
Надо создать сиды для этого дела.
Подключить docker для бэка
Написать базовые endpoint'ы
Добавить в правом верхнем углу доступ к профилю
Для начала: страница пользователя, где можно редактировать свои данные
Создать каркас back-end'а
(F): страница профиля пользователя
Страница с информацией о пользователе. Инициально выводим:
- Аватар
- Имя и фамилию
- Кнопка "похвалить", которая ведет на страницу создания похвалы
(B): хранение ответов
Поля (review_results):
- review_id (id)
- answers (array)
- respondent (user id)
- interviewer (user id)
Грубо говоря:
[
{
"review_id": ...,
"answers": [
{
"question_id": ...,
"answer": ...
},
{
"question_id": ...,
"answer": ...
}
],
"respondent_id": ...,
"interviewer_id": ...
}
]
(B): Похвала (kudos)
Сущность "похвалы". Решили разделить их на предсозданные категории, типа "Технические навыки", "Личные качества", "Социальные" и т.п.
Опционально можно добавить к похвале тэг(и) и написать текстовый комментарий.
В будущем можно выводить историю всех аналогичных событий для пользователя или всех пользователей в системе.
(F): Создать компонент Wrapper
Состав:
- Заголовок (есть/нет - в зависимости от типа открытого окна)
- Список карточек
- Кнопка (есть/нет - в зависимости от типа открытого окна)
(F): Создать окно восстановления пароля
Интерфейс + роут.
По сути, одна и та же форма будет использоваться в двух случаях:
- Восстановление пароля
- Установка пароля для нового юзера (тот самый экран по ссылке из приглашения)
Роуты при этом должны быть разные
(B): Создать сущность review
Предложенные поля:
- Список юзеров
- Название
- Дата проведения
- Шаблон анкеты
- Владелец
(F): Создать окно авторизации
Интерфейс + роут.
Не работает страница авторизации
Кейс №1:
При переходе на главную страницу приложения без токена, не перекидывает на авторизацию.
Кейс №2:
Роут auth/sign-in не работает? Непонятно почему не открывается страница авторизации по прямому пути
(DevOps): сделать CI
Сейчас уже настроен мирроринг репозитория. Нужно поднять там человеческий CI, чтоб уже вживую смотреть на наш проект
(B): сущность тэги похвалы
CRUD + эндпоинт для предложки с автозаполнением.
Не связано с категориями.
Пока что эти тэги относятся только к сущности kudos.
Подключение авторизации
Соединение фронта с бэком. Результат - рабочая авторизация/регистрация по API.
(B): стандартизация ошибок
Привести к единому виду тело ответа при ошибке. Вероятно, переиспользовать библиотеку, которую делаем в рамках LMS
(F): Создать карточки Ревью, Юзер, Отзыв
- Ревью
- Юзер
- Отзыв
Отзыв:
- Ревьюер (имя, например)
- Объект тела отзыва с подобной структурой: {type: 'text', body: 'lol kiek otziv'} (для начала просто текст, засчет хранения объектом получим возможность без геморроя расширить)
Юзер:
- Аватарка
- Имя
- Комментарий (для начала просто текст; можно указать должность, например)
Ревью:
- Название
- Описание
На странице профиля добавить возможность редактировать данные
Можно изменить: аватар и пароль
Остальные данные: read-only
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.