Name Published on npm Imported by developers Follow semver Use cases API naming Notes
“public” Our product. Nothing special.
“unstable” No API we want to try out with the community. They could become stable. Same as above, but have modules exported with a prefix: unstable_ . A stable dependency that use an unstable API of another dependency must pin the version used. It's important so breaking changes don't propagate from one package to another.
“internal” No No Avoid duplication of code between our npm packages. - internal APIs for packages: @product/internals , can be dependency of public packages, must be pinned.

The cases

Naming rules