4.22.1 • Published 5 months ago

antiage-ui-kit v4.22.1

Weekly downloads
-
License
MIT
Repository
github
Last release
5 months ago

Anti-Age UI-Kit

Краткое описание

Проект создан по шаблону библиотеки tsdx. В нём используется семантическое версионирование semantic-release. Собирается проект с помощью Rollup.

Установка проекта

  • Настроить git для избежания конфликта LF и CRLF (опционально)
git config --global core.autocrlf 'input'
  • Склонировать репозиторий
  • Установить зависимости
npm install

Архитектура

src/
  index.ts // корень UI-Kit, реэкспорты компонентов и их стилей
  ui-kit.css // CSS-переменным по Opium.Fill
  components/ // компоненты UI-Kit
    NameComponent // шаблон компонента
      NameComponent.tsx // компонент
      NameComponent.css // стили
      NameComponent.test.ts // тесты
      NameComponent.stories.tsx // storybook компонента
      NameComponent.types.ts // типы компонента
      index.ts // реэкспорт компонента по дефолту
  assets // компоненты svg
    NameAsset.tsx // компонент svg
    SvgAssets.stories.tsx // список svg, которые можно использовать
    index.ts // реэкспорт компонентов

Npm Scripts

  • npm run prepare - Установить Husky
  • npm run build - Сборка проекта
  • npm run test - Запуск тестов
  • npm run size - Проверка собранного проекта на ограничение по весу
  • npm run lint - Выявление несоответствий и авто-исправление кодового стиля в .js/.ts файлах
  • npm run stylelint - Выявление несоответствий и авто-исправление кодового стиля в .css файлах
  • npm run semantic-release - Выпуск новой версии проекта в релиз
  • npm run storybook - Запуск Storybook в development режиме
  • npm run build-storybook - Выпуск Storybook проекта через GitHub Pages
  • npm run generate NameComponent - Создание шаблона компонента UI-Kit компонента
  • npm run svgr - Создание svg-компонентов из .svg. Файлы нужно класть в папку assets

Git Branching

Наименования веток:

  • feat/name-feat - новая фича
  • fix/name-fix - исправление бага
  • docs/name-docs - добавление или изменение документации
  • style/name-style - изменения, которые не влияют на работу кода
  • refactor/name-refactor - изменения без новой функциональности, без исправления бага
  • perf/name-perf - изменения повышающее производительность
  • test/name-test - добавление или изменение тестов
  • chore/name-chore - изменения процесса сборки, вспомогательных инструментов, библиотек

Commits Naming

В проекте используется semantic-release, поэтому у коммитов должно быть оформленное по всем правилам название. Это нужно для определения следующего номера версии проекта. Все правила взяты из "Соглашение о коммитах" К прочтению ОБЯЗАТЕЛЬНО!

Сообщение коммита должно быть следующей структуры:

<тип>[необязательный контекст]: <описание>

[необязательное тело]

[необязательная(ые) сноска(и)]
  • Тип должен браться из классификации разрешённых типов, например feat.
  • Контекст берётся исходя над чем велась работа, например (Button).
  • Описание должно быть в повелительном наклонении, например add secondary color.

Классификация типов:

  • feat - новая фича
  • fix - исправление бага
  • docs - добавление или изменение документации
  • style - изменения, которые не влияют на работу кода
  • refactor - изменения без новой функциональности, без исправления бага
  • perf - изменения повышающее производительность
  • test - добавление или изменение тестов
  • chore - изменения процесса сборки, вспомогательных инструментов, библиотек

GitHub Actions

  • main - Запуск проекта на 14 и 16 версиях Node.js (Выполняется автоматически при каждом push в удалённый репозиторий)
  • release - Выпуск новой версии (Выполняется автоматически при push или merge в master)
  • size - Проверка проекта на лимит по весу (Выполняется автоматически при каждом PullRequest)
  • storybook - Обновление Storybook на GitHub Pages

Workflow

  • Каждый компонент должен быть выполнен по шаблону. Команда для создания шаблона описана в разделе Npm Scripts
  • Каждый svg должен быть превращён в svg-компонент. Команда для превращения описана в разделе Npm Scripts
  • Каждый svg-компонент должен отображаться в SvgAssets.
  • В конце разработки задача должна пройти Сode Review от любого разработчика из команды
  • После успешного релиза новой версии, разработчик должен запустить GitHub Action storybook

Code Review

  • Ревью проводится для каждого участника команды, вне зависимости от уровня
  • Время на ревью должно быть не больше 20 минут
  • У ревью самый высокий приоритет, должно быть выполнено в течение 30 минут

Список проверок на ревью:

  • Архитектура
  • Реализация компонента (функциональности, дизайн и т.д)
  • Наименование функций, переменных, типов и т.д.
  • Наличие тестов и Storybook-документации

Приоритеты:

  • 🔥 - важно, нужно исправить в первую очередь
  • ❓ - нужно обсудить и принять решение
  • 💬 - править необязательно, принимай решение сам
  • 👍 - всё правильно, ревью завершено
4.22.1

5 months ago

4.22.0

5 months ago

4.21.0

5 months ago

4.20.0

5 months ago

4.18.1

6 months ago

4.19.0

5 months ago

4.14.1

9 months ago

4.14.2

9 months ago

4.14.3

9 months ago

4.18.0

6 months ago

4.14.4

9 months ago

4.9.0

10 months ago

4.4.1

10 months ago

4.4.0

10 months ago

4.10.1

10 months ago

4.10.2

10 months ago

4.10.3

10 months ago

4.14.0

9 months ago

4.10.0

10 months ago

4.17.2

8 months ago

4.17.3

8 months ago

4.17.4

8 months ago

4.17.5

8 months ago

4.17.0

8 months ago

4.17.1

8 months ago

4.17.6

8 months ago

4.17.7

8 months ago

4.8.0

10 months ago

4.17.8

7 months ago

4.17.9

7 months ago

4.17.10

7 months ago

4.17.11

7 months ago

4.17.12

7 months ago

4.7.0

10 months ago

4.13.0

9 months ago

4.16.0

8 months ago

4.6.0

10 months ago

4.12.0

9 months ago

4.15.0

8 months ago

4.5.0

10 months ago

4.11.0

9 months ago

4.3.2

12 months ago

4.3.1

12 months ago

4.3.3

12 months ago

4.3.0

12 months ago

4.2.3

1 year ago

4.2.2

1 year ago

4.1.8

1 year ago

4.1.7

1 year ago

4.1.9

1 year ago

4.2.1

1 year ago

4.2.0

1 year ago

4.1.10

1 year ago

4.1.4

1 year ago

4.1.3

1 year ago

4.1.6

1 year ago

4.1.5

1 year ago

4.1.0

1 year ago

4.1.2

1 year ago

4.1.1

1 year ago

2.10.7

1 year ago

2.10.8

1 year ago

3.0.0

1 year ago

2.10.5

1 year ago

2.10.6

1 year ago

4.0.5

1 year ago

4.0.4

1 year ago

4.0.1

1 year ago

4.0.0

1 year ago

4.0.3

1 year ago

4.0.2

1 year ago

2.10.1

1 year ago

2.10.2

1 year ago

2.5.0

1 year ago

2.10.0

1 year ago

2.7.0

1 year ago

2.6.1

1 year ago

2.5.2

1 year ago

2.6.0

1 year ago

2.5.1

1 year ago

2.9.0

1 year ago

2.8.0

1 year ago

2.6.2

1 year ago

2.10.3

1 year ago

2.10.4

1 year ago

2.4.1

2 years ago

2.4.0

2 years ago

2.3.0

2 years ago

2.2.0

2 years ago

2.1.0

2 years ago

2.0.0

2 years ago

1.5.1

2 years ago

1.5.0

2 years ago

1.4.0

2 years ago

1.3.0

2 years ago

1.2.0

2 years ago

1.0.0

2 years ago

1.1.0

2 years ago

0.0.4

2 years ago

0.0.3

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago