What problem does it solve?
Verifying that published @opentrons npm packages work correctly for external consumers is difficult because monorepo development uses live source, not packed artifacts. This Skill provides a reference external-consumer environment that builds packed tarballs, applies publish-time manifest patches, links them locally, and validates them with a Vite demo app plus Playwright and Applitools visual tests.
Core Features & Use Cases
- Packed package validation: Builds and patches packed artifacts for @opentrons/shared-data, step-generation, components, and protocol-visualization, then links them via link:pack/ dependencies.
- External consumer checklist: Documents required peer dependencies, CSS imports, i18n setup with I18nextProvider, and Vite configuration for consumers of the packages.
- Visual and integration testing: Runs Playwright tests with Applitools Eyes against a Vite demo app to catch rendering and styling regressions.
- Use Case: After editing shared-data source code, run make build-local-packages and pnpm install in js-package-testing, then execute make test to confirm the packed library still renders correctly in a real consumer app.
Quick Start
Set up the external consumer environment and run the visual tests for the packed Opentrons packages using the js-package-testing skill.