Добавление стороннего плагина

Подробнее о плагинах

Процесс

Плагины проходят четыре стадии: предложение , обсуждение , внедрение и публикация .

Предположение

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

Узнайте, как написать запрос на добавление функции.

В дополнение к основной информации о запросе функций предложение плагина должно включать:

  • API, который будет предоставлять плагин.
  • API, которые необходимо добавить или изменить в ядре Blockly для поддержки плагина.
  • Скриншоты, GIF-файлы или макеты, если плагин включает функции пользовательского интерфейса.
  • Объяснение того, почему это должен быть сторонний плагин, а не сторонний.

Команда Blockly просматривает предложения по мере их поступления и либо закрывает проблему, либо добавляет метку статуса: обсуждение .

Обсуждение

Далее плагин переходит в фазу обсуждения . Этот этап включает в себя:

  • Уточнение желаемого функционала.
  • Уточнение API плагина.
  • Планирование реализации.
  • Планирование тестов.
  • Обсуждение изменений API в ядре Blockly.
  • Разбиваем большие плагины на этапы реализации.
  • Именование плагинов на основе наших соглашений об именах .
  • Подтверждение того, что все основные критерии будут соблюдены.

Обычно это обсуждение происходит по вопросу GitHub. Чем меньше объем плагина, тем быстрее может пройти этап обсуждения. Плагины большего размера могут привлечь внимание сообщества и сформировать сильное мнение о правильном решении. Если это произойдет с вашей проблемой, поздравляем! Вы нашли то, что волнует людей.

Цель состоит в том, чтобы в конце этапа обсуждения были приняты все основные проектные решения и существовал четкий список этапов реализации. Оба должны быть задокументированы в комментариях по этому вопросу.

В ходе обсуждения мы можем решить, что плагин должен быть сторонним плагином и не публиковаться в рамках @blockly . В таком случае мы объясним причину и закроем вопрос.

Когда обсуждение завершено, член команды Blockly добавляет к проблеме метку статуса: реализация .

Выполнение

Этапы реализации включают в себя:

  • Запуск npx @blockly/create-package для настройки плагина и его каталога из шаблона. Узнать больше...
  • Реализация базовой логики для плагина.
  • Реализация пользовательского интерфейса, если необходимо.
  • Тестируем плагин с помощью mocha.
  • Документирование плагина, включая README .

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

Реализация может осуществляться несколькими участниками параллельно. Вы можете реализовать плагин совместно в своем собственном форке или с помощью запросов на включение в этот репозиторий. Если вы хотите совместно работать над плагином в этом репозитории, попросите команду Blockly создать для вас ветку функций.

Плагины следует добавлять в файл gh-pages/index.md в master ветке Blockly-Samples. Это приведет к их появлению на нашем сайте плагинов . Собственные плагины должны указывать на свою тестовую страницу. На эту страницу также можно добавить сторонние плагины, которые могут указывать на ссылку по выбору владельца, например на размещенную демонстрацию или страницу npm.

Издательский

Наконец, публикация . Команда Blockly использует Lerna для управления версиями и публикацией всех плагинов.

Каждый четверг публикуются любые плагины, которые изменились с момента их последнего выпуска. Если вам нужно, чтобы изменение было опубликовано раньше, отметьте это в своем запросе на включение.

Сайт плагинов также обновляется при каждой публикации плагинов.

Плагины, которые не готовы к публикации, должны быть помечены private в их package.json . Это может произойти, если плагин использует еще не опубликованное изменение в ядре Blockly . Core Blockly публикуется в последнюю неделю каждого квартала (раз в три месяца).