In Concrete5 a Package is a bundle of reusable components that can be installed or uninstalled at once. This bundle also contains a PHP Controller file which sets attributes about the Package, including its version, its name and description, and the code to run on install, upgrade and uninstall. Many Concrete5 features can be bound to a particular package, which makes the Package object a useful one both for the bundling of code and the deployment of content. All themes or add-ons delivered to Concrete5 sites from the marketplace are delivered in the Package format in a ZIP archive. Starting Point Packages are objects that deliver starter sample content for Concrete5 sites. They live in a different directory than regular Package objects, and must include a content.xml file, but otherwise they are very similar.
Visit Bundling Code into Packages for Reuse and Marketplace Distribution section to learn how to create a package.