Skip to content

cdek-it/cdek-ui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hub-Satellite

Концепция

Hub-Satellite - централизованная система управления задачами:

Создание задачи

  • Запрещено: создавать задачи напрямую в satellite-репозиториях
  • Разрешено: создавать задачи только в Hub с satellite-лейблом

Шаг 1: Создание задачи в Hub

  • ⚙️ Общая задача – предлагайте улучшения основного функционала и системы в целом
  • 💡 Новый функционал – делитесь идеями о новых компонентах или функциональности
  • 🐞 Отчёт об ошибке – помогайте исправлять баги в существующих компонентах
  • 💬 Вопросы и идеи – обсуждайте концепции и решения с командой дизайн-системы

Шаг 2: Маршрутизация в Satellite

Добавить лейбл satellite/имя-репозитория

Система автоматически:

  • Создаст задачу в satellite-репозитории
  • Добавит ссылку на satellite-задачу в Hub
  • Установит лейбл state/routed

Синхронизация лейблов

  • Синхронизируются: status/, priority/, area/, type/
  • Не синхронизируются: satellite/, state/routed, state/from-hub

Комментарии

  • Пропускаются: системные комментарии, сообщения ботов
  • Синхронизируются: комментарии пользователей

Система лейблов

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

Показать все лейблы

Satellite (назначение репозитория)

satellite/angular-ui-kit
satellite/vue-ui-kit
satellite/react-ui-kit
satellite/react-native-ui-kit

Status (статус задачи)

status/needs-triage    - Требует review
status/ready-for-dev   - Готово к разработке
status/in-progress     - В разработке
status/needs-review    - Ожидает code review
status/blocked         - Заблокировано

Priority (приоритет)

priority/critical
priority/high
priority/medium
priority/low

Area (область)

area/design-system     - Core дизайн-система
area/components        - UI компоненты
area/accessibility     - A11y
area/performance       - Производительность
area/tooling           - Developer experience

Type (тип задачи)

type/bug               - Исправление багов
type/feature           - Новая функциональность
type/enhancement       - Улучшение существующего
type/refactor          - Рефакторинг
type/documentation     - Документация
type/testing           - Тесты
type/ci-cd             - CI/CD

Системные (автоматические)

state/from-hub         - Задача из Hub
state/routed           - Направлена в satellite

Автоматическая синхронизация

Hub → Satellite

  • Создание задачи при добавлении satellite/ лейбла
  • Все лейблы (кроме satellite/ и status/need-triage)
  • Служебные лейблы (state/from-hub)

Satellite → Hub

  • Статус задачи (открыта/закрыта)
  • Лейблы: status/, priority/, area/, type/
  • Комментарии пользователей

Hub → Satellite (двусторонняя)

  • Статус задачи
  • Лейблы: status/, priority/, area/, type/
  • Комментарии пользователей

Пример workflow

1. Создание в Hub

Пример задачи: [ФУНКЦИОНАЛ] Компонент:DatePicker для выбора дат
Title: "[ФУНКЦИОНАЛ] Компонент:DatePicker для выбора дат"

Labels: type/feature, status/needs-triage

Что предлагается добавить:
Компонент DatePicker для выбора одиночных дат и диапазонов с поддержкой локализации, 
минимальных/максимальных значений и кастомизации формата отображения.

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

Причина необходимости:
В текущих проектах часто требуется выбор дат (бронирование, фильтры, формы заказов), 
но существующие решения не покрывают все потребности и требуют дублирования кода.

Ссылка на дизайн-файл или документацию:
https://figma.com/file/xyz123/DatePicker-Component

Основной сценарий использования:
- Выбор даты доставки в форме оформления заказа
- Фильтрация данных по диапазону дат в отчетах
- Установка даты рождения в профиле пользователя
- Выбор периода для бронирования услуг

Дополнительные сценарии фичи:
- Быстрый выбор предустановленных периодов (сегодня, неделя, месяц)
- Блокировка недоступных дат (выходные, праздники)
- Интеграция с формами и валидацией

2. Автоматические действия

  • Создается задача в react-ui-kit
  • В Hub добавляется ссылка на satellite-задачу
  • Устанавливается лейбл state/routed

3. Работа в Satellite

  • Разработчик работает в react-ui-kit
  • Обновляет статусы (status/in-progress, status/needs-review)
  • Добавляет комментарии о прогрессе
  • Все изменения автоматически синхронизируются с Hub

4. Завершение

  • При закрытии задачи в Satellite автоматически закрывается задача в Hub
  • Вся история работы сохраняется в обоих репозиториях
  • Лейблы и комментарии остаются синхронизированными

About

Координационный центр всех контрибуций

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •