0.1.4 β’ Published 4 years ago
@ott_test/location-field v0.1.4
OTP-UI React Component Library
A Monorepo with multiple packages and a shared build, test, and release process.
- π Lerna β- The Monorepo manager
- π¦ Yarn Workspacesβ - βSane multi-package management
- π Reactβ - βJavaScript library for user interfaces
- π styled-componentsβ -β CSS in JS elegance
- π Babelβ - βCompiles next-gen JavaScript
- π Storybook - UI Component Environment
- π Jestβ -β Unit/Snapshot Testing
Usage
yarn dev
- This starts Storybook for viewing all the components locally.yarn bootstrap
- This installs all of the packages and links dependent packages together.yarn build
- This babelfies all of the packages and creates/lib
folders for each one.yarn unit
- Run jest unit tests.yarn coverage
- Shows jest unit coverage.
Lerna
lerna changed
- Show which packages have changed.lerna diff
- Show specifically what files have cause the packages to change.lerna create <packageName>
- Creates new package and walks through setting up package.json
Linking
When linking inside of the Monorepo, everything works as expected. If you are trying to consume packages from this Monorepo in a different application locally, using npm link
or yarn link
does not work as expected. However, we have a workaround for the time being.
- Run
yarn build
- Run
yarn dev
- Change the
package.json
of the consumer from$YOUR_PACKAGE_NAME
(which lives inside the monorepo) tofile:./../monorepo/packages/$YOUR_PACKAGE_NAME
- Run
rm -rf node_modules && yarn
in the consumer - π
Contributing
All formatting and linting should be taken care of for you using stylelint, ESLint, and Prettier. You should also consider installing an extension for CSS syntax highlighting.