Утилиты и UI-компоненты
york-core— Утилиты, гайдовые цветаyork-analytics— Аналитика для Reactyork-web— UI-компоненты для Reactyork-react-native— UI-компоненты для React Nativeyork-styleguide— Стайлгайд с компонентамиyork-expo— Expo-приложение для тестирования компонентовyork-react-native
$ npm i
$ npm i -g expo-cli # Только для работы с york-expo
$ npm run bootstrap$ npm run start:web # Запустить веб-версию
$ npm run start:expo # Запустить RN-версию
$ npm start # Запустить всеОткрыть в браузуре url localhost:6060
Иногда требуется проверять новые версии пакета локально в реальных проектах до паблиша. В большинстве случаев хватает npm link, но есть особые случаи.
Стандартный react-native сборщик не дружит с npm link, поэтому для линковки используется wml.
Сначала создадим линк.
$ npm install -g wml
$ wml add /path-to-york/packages/york-react-native/ /path-to-react-native-app/node_modules/@qlean/york-react-nativeТеперь, всякий раз при локальном использовании йорка достаточно использовать
$ wml startРаботает только из ветки master.
Обязательно проверить логин в npm: npm whoami
Собрать, прогнать линтер и тесты, поднять версию, расставить теги, опубликовать:
$ npm run release:npm # Опубликовать пакеты в npm
$ npm run release:expo # Опубликовать york-expo
$ npm run release # Опубликовать всеЕсли что-то пошло не так, то удаляем тег с гитхаба и локально и пробуем снова.
Скрипты в package.json должны быть везде одни и те же, чтобы можно было запускать их с помощью Lerna для всех пакетов сразу.
| Команда | Назначение |
|---|---|
start |
Запуск в режиме разработки |
build |
Сборка продакшен-бандла |
clean |
Удаление временных файлов |
lint |
Прогон линтера |
test |
Прогон тестов |
test:watch |
Запуск тестов в режиме слежения |