Packages are independent JavaScript libraries. As much as possible, their behaviors should be reusable and make no assumptions about particular application pages or configuration. Instead, they should be initialized by a pack which provides relevant configuration and page element references.
A package should behave much like any other third-party npm package, where each folder in this directory represents a single package. These packages are managed using npm workspaces. Refer to Front-end Architecture documentation on npm Workspaces for more information.