Unlocked packages allow developers to package and deploy metadata components between orgs. They differ from managed packages in that they are not listed on AppExchange and do not support push upgrades. Unlocked packages can depend on other packages and support options for upgrading components between package versions like deprecation or deletion. Tools exist to help untangle orgs into modular packages by analyzing metadata dependencies.