Search by

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.