The Swift Package Manager lets you share your code as a package, depend on and use other shared packages, as well as build, test, document, and run your code.
Build Swift packages with an existing continuous integration setup and prepare apps that consume package dependencies within an existing CI pipeline.
Extend package manager functionality with build or command plugins.
Create aliased names for modules to avoid collisions between targets in your package or its dependencies.