Overview:
The lerna#-frontend-exp-core repository is the central location for Toptal’s reusable UI components. These components are divided into separate packages and distributed through NPM. Some of the key packages include @toptal/picasso for core UI building blocks, @toptal/picasso-charts for reusable charts, and @toptal/picasso-forms for a form solution based on react-final-form. There are also shared utilities available in the @toptal/picasso-shared package.
Features:
- @toptal/picasso: core UI building blocks
- @toptal/picasso-charts: reusable charts based on recharts
- @toptal/picasso-forms: a form solution based on react-final-form
- @toptal/picasso-codemod: scripts to help developers migrate to the latest version
- @toptal/picasso-shared: shared utilities between the packages
Installation:
To install the theme, follow these steps:
- Execute the command
yarn startto spin up the storybook server on http://localhost:9001. - Use the following commands to perform specific actions:
build:package: Build the packagesbuild:storybook: Build Storybook as a static websitegenerate:component: Generate a new component templategenerate:example: Generate a new component code examplegenerate:svg-components: Generate JSX components from SVGsgenerate:icons: Generate JSX components from SVGs (only icons)generate:pictograms: Generate JSX components from SVGs (only pictograms)happo: Run Happo locally and generate a report on happo.iohappo:storybook: Run Happo for Storybook on CIlint: Lint all filesstart: Start the Storybook instance and inspect componentstest: Run Jest and Cypress teststest:integration: Run Cypress teststest:integration:open: Run Cypress in development modetest:unit: Run unit teststest:unit -u: Update Jest snapshotstest:unit:watch: Run unit tests in watch modetypecheck: Validate TypeScript compilation
Summary:
The lerna#-frontend-exp-core repository houses Toptal’s reusable UI components, which are organized into separate packages and distributed through NPM. The core packages including building blocks, charts, forms, and shared utilities. Installing the theme involves running the necessary commands to build packages, generate components and examples, and run tests.