Getting Started
Define Your Dependencies
Put a file namedcomposer.json at the root of your project, containing your project dependencies:
{ "require": { "vendor/package": "1.3.2", "vendor/package2": "1.*", "vendor/package3": "^2.0.3" }}
For more information about packages versions usage, see thecomposer documentation.
Install Composer In Your Project
Run this in your command line:
curl -sS https://getcomposer.org/installer | php
Ordownload composer.phar into your project root.
See the Composer documentation for completeinstallation instructions on various platforms.
Install Dependencies
Execute this in your project root.
php composer.phar install
Autoload Dependencies
If your packages specifyautoloading information, you can autoload all the dependencies by adding this to your code:
require 'vendor/autoload.php';
Browse the packages we have to find more great libraries you can use in your project.
Publishing Packages
Define Your Package
Put a file namedcomposer.json at the root of your package's repository, containing this information:
{ "name": "your-vendor-name/package-name", "description": "A short description of what your package does", "require": { "php": ">=8.2", "another-vendor/package": "1.*" }}
This is the strictly minimal information you have to give.
For more details about package naming and the fields you can use to document your package better, see theabout page.
Validate The File
Runcomposer validate
to check that your file has no syntax errors.
Commit The File
Add thecomposer.json
to your git or other VCS repository and commit it.
Publish It
Log in orregister on this site, then hit thesubmit button in the menu.
Once you entered your public repository URL in there, your package will be automatically crawled periodically. You just have to make sure you keep the composer.json file up to date.
Sharing Private Code
UsePrivate Packagist if you want to share private code as a Composer package with colleagues or customers without publishing it for everyone on Packagist.org. Private Packagist allows you to manage your own private Composer repository with per-user authentication, team management and integration in version control systems.