Compositeur génial
Une liste organisée de ressources pour Composer, Packagist, Satis, Plugins, Scripts, Vidéos, Tutoriels.
Vous aimerez peut-être aussi Awesome-php.
Veuillez lire les directives de contribution avant de contribuer.
Compositeur
- Site officiel
- GitHub
- Problèmes
- Source
- Documentation
- Guide de démarrage et instructions d'installation
- Trouver des packages sur Packagist
- CheatSheet - Présentation des commandes CLI et du schéma
composer.json
. - Installateurs Composer - Installateurs Composer pour plusieurs frameworks.
Soutien
Débordement de pile
- Vous pouvez utiliser les balises suivantes :
composer-php
, packagist
, satis
+ php
. - Posez une nouvelle question
- Rechercher des questions taguées
composer-php
IRC
- Les canaux IRC sont sur
irc.freenode.org
: #composer pour les utilisateurs et #composer-dev pour le développement.
Plugins
- Documentation pour les plugins - Cette documentation officielle est un bon point de départ pour écrire un plugin Composer.
- Composer-Asset-Plugin - Un gestionnaire de dépendances npm/Bower pour Composer.
- Composer-AWS - Le plugin charge les données du référentiel et télécharge les packages depuis Amazon S3 (avec prise en charge de l'authentification pour les référentiels privés).
- Composer-Composition - Fournit une API pour vérifier votre environnement au moment de l'exécution.
- Composer-Suggest - Vous permet d'installer un groupe personnalisé de packages suggérés, basés sur des modèles de mots clés.
- Composer-Versions-Check - Affiche les packages obsolètes des dernières versions majeures après avoir utilisé la commande de mise à jour (affichant "La dernière est vX.YZ").
- Composer-Changelogs - Fournit un résumé des mises à jour avec des liens vers changelog/releasenote/tag. La sortie est prête à être collée dans le message de validation lors de la mise à jour du fichier composer.lock.
- Composer-Merge-Plugin - Fusionne plusieurs fichiers
composer.json
au moment de l'exécution de Composer. - Composer-Bin-Plugin - Ajoute la prise en charge de la gestion des dépendances de plusieurs packages dans un seul référentiel ou isole les dépendances bin.
- Composer-Inheritance-Plugin - Version avisée du plugin composer-merge-plugin Wikimedia pour fonctionner en paire avec le plugin compositeur-bin-plugin Bamarni.
- Composer-MonoRepo-Plugin - Le plugin permet de gérer les dépendances de plusieurs packages dans un seul référentiel.
- Composer-Patches-Plugin - Vous permet de fournir des correctifs pour n'importe quel package à partir de n'importe quel package. Lorsque la dépendance est récupérée, le correctif est appliqué par-dessus.
- Composer-Patches - Le plugin applique un correctif à partir d'un fichier local ou distant à n'importe quel package requis.
- Composer-Patches - Applique un correctif à partir d'un fichier local ou distant à tout package faisant partie d'un projet Composer donné.
- Composer-Patchset - Récupérez, mettez à jour et appliquez automatiquement les correctifs à n'importe quel package de composition avec une touche d'originalité - stockez l'ensemble de correctifs en tant que package de composition lui-même.
- Composer-Plugin-QA - Plugin complet permettant au compositeur d'exécuter les outils d'assurance qualité PHP.
- Composer-Cleanup-Plugin - Supprime les dossiers de tests et de documentation du répertoire du fournisseur.
- Composer-Cleaner - L'outil supprime les fichiers et répertoires inutiles du répertoire du fournisseur.
- Composer-Ignore-Plugin - Vous permet de supprimer des fichiers et des dossiers du dossier du fournisseur (pour effectuer un déploiement plus propre et plus petit en production). C'est une alternative à
.gitattributes
. - Composer-Vendor-Cleaner - Le plugin supprime les fichiers et répertoires de développement inutiles du répertoire
vendor
par la syntaxe du modèle global. - Composer-Skrub - Le plugin permet de supprimer les fichiers indésirables des installations de Composer et de réduire la taille des builds.
- Plugin Drupal Vendor Hardening Composer - Supprime les répertoires superflus du répertoire des fournisseurs du projet et ajoute les fichiers .htaccess et web.config à la racine du répertoire des fournisseurs du projet.
- Composer-Shared-Package-Plugin - Vous permet de partager les packages sélectionnés entre vos projets en créant des liens symboliques.
- Composer-Symlinker - Vous permet de charger des packages à partir de différents répertoires (au lieu de les charger depuis /vendor).
- Prestissimo - Un téléchargeur parallèle utilisant
phpext_curl
. - Composer-Curl-Plugin - Le plugin utilise
phpext_curl
pour télécharger des packages. - Composer-Custom-Directory-Installer - Un plugin composer, pour installer différents types de packages composer dans des répertoires personnalisés en dehors du chemin d'installation par défaut du compositeur (dossier du fournisseur).
- Composer-Dependency-Analyzer - Le plugin aide à trouver les problèmes de dépendance, y compris les dépendances mortes, inutilisées, fantômes et mal placées.
- Composer-Dependency-Analyzer - Vous permet de créer un graphique de dépendances pour un projet Composer installé.
- Graph-Composer - Fournit une visualisation graphique pour le
composer.json
de votre projet et ses dépendances. - PackageVersions - Fournit un accès très rapide et facile aux versions de dépendances du compositeur installées.
- PackageVersions obsolète - Est un fork d'Ocramius/PackageVersions offrant une compatibilité avec Composer 1 et 2 sur PHP 7+.
- Composer-Locator - Fournit un moyen de localiser le chemin d'installation pour un nom de package Composer donné.
- PackageInfo - Vous permet de récupérer toutes les informations sur le package (comme la version, la balise, la date de sortie, la description).
- Composer-Git-Hooks - Une bibliothèque pour gérer facilement les hooks git dans votre configuration de composer.
- Symfony-Flex - Fournit une gestion d'installation et de configuration basée sur des recettes pour les packages Symfony.
- Narrowspark-Automatic - Automatise les tâches les plus courantes des applications, accélère les téléchargements de packages, ajoute un audit de sécurité du compositeur et bien plus encore.
- PHPCodeSniffer-Composer-Installer - Le plugin vous permet d'installer les normes de codage PHP_CodeSniffer (ensembles de règles).
- Composer-Warmup - Le plugin ajoute la commande
warmup-opcode
à Composer, qui déclenche la compilation de tous les fichiers PHP découverts dans votre projet dans l'Opcache. - Foxy - Plugin Composer qui exécute les opérations d'installation des packages npm/yarn, lorsque le package composer est installé ou mis à jour.
- NodeJS-Installer - Installateur pour Node.js et npm.
- Node-Composer - Installateur pour Node.js, npm et Yarn.
- Imposter-Plugin - Encapsulation de tous les packages des fournisseurs de compositeur dans votre propre espace de noms. Destiné aux plugins WordPress.
- Composer Preload - Le plugin génère un fichier
vendor/preload.php
pour réchauffer l'Opcache. - PHP Inc - Inclut automatiquement les fichiers pour autoload et autoload-dev pour faciliter l'utilisation de fonctions et de définitions groupées dans les applications chargées du composeur.
- Composer Registry Manager - Vous permet de basculer entre différents référentiels Composer.
- Production-Dependencies-Guard - Empêche l'ajout de packages de développement dans require et l'accès à l'environnement de production.
- Composer-Plugin-Exclude-Files - Un plugin pour exclure les fichiers requis par les packages à l'aide du mécanisme de chargement automatique des « fichiers ».
- Composer-Downloads-Plugin - Mécanisme léger pour télécharger des ressources externes (fichiers ZIP/TAR) avec seulement une
url
et path
. - Private-Composer-Installer - Installez l'assistant d'externalisation des clés sensibles de l'URL du package dans les variables d'environnement.
- CycloneDX-PHP-Composer - Crée une « nomenclature logicielle » (SBOM) CycloneDX pour les dépendances d'un projet. Le SBOM permet la surveillance des dépendances et l'analyse des risques par OWASP DependencyTrack.
- Composer-Compile-Plugin - Permet aux bibliothèques PHP de définir des tâches de compilation simples et libres. Prise en charge des hooks post-installation dans n'importe quel package.
- Composer-Link - Ajoute la possibilité de lier des packages locaux pour le développement.
- Composer-REPL - Le plugin fournit la commande
composer repl
, qui vous donne un shell de langage PHP (boucle read-eval-print). - Composer-Diff - Compare les modifications
composer.lock
et génère un rapport Markdown à utiliser dans une description de demande d'extraction. - Composer-Velocita - Téléchargements rapides et fiables du package Composer à l'aide de Velocita : un proxy inverse de mise en cache qui ne nécessite pas de modification de vos projets.
Outils
- Composer SemVer Checker - Vous permet d'identifier les contraintes liées aux problèmes de résolution de version, en effectuant une vérification sémantique de version pour les packages hébergés par Packagist.
- Composer-Yaml - Cet outil convertit
composer.yml
en composer.json
. - Studio - Un atelier pour développer des packages Composer. C'est une alternative à la modification des dépendances dans le dossier du fournisseur ou à l'utilisation de PathRepositories pour charger un clone local de votre dépendance dans votre projet.
- Extension de navigateur OctoLinker - Vous permet de parcourir les dépendances Composer/NPM sur GitHub.
- ComposerRequireChecker - Un outil CLI pour analyser les dépendances et vérifier qu'aucun symbole importé inconnu n'est utilisé dans les sources d'un package.
- Composer-Unused - Un outil CLI, qui analyse votre code et affiche les dépendances Composer inutilisées.
- Composer-Normalize - Le plugin aide à maintenir la cohérence de vos fichiers
composer.json
en restructurant et en triant les entrées (normalisation). - Composer-Service - Vous permet d'exécuter Composer en tant que service sur un serveur distant.
- Composer PreferLowest Checker - Comparez strictement les versions minimales spécifiées de votre composer.json avec celles réellement utilisées par l'option de commande de mise à jour du compositeur préféré.
- Bramus/Composer-Autocomplete - Un script d'auto-complétion Bash/Shell pour Composer.
- Composer/Xdebug-Handler - Vous aide à redémarrer un processus CLI sans charger l'extension xdebug.
- Composer Semver Range Checker - Un outil pour aider à vérifier les plages satisfiables d'une contrainte de compositeur.
Scripts
- ParameterHandler - Vous permet de gérer vos paramètres ignorés lors de l'exécution d'une installation ou d'une mise à jour de Composer.
- Tooly - Gérez les fichiers PHAR nécessaires dans votre projet
composer.json
. Chaque fichier PHAR sera enregistré dans le répertoire binaire du compositeur. En option avec vérification GPG pour chaque PHAR. - Melody - Scripts de compositeur à fichier unique.
- Composer-Travis-Lint - Vous permet de linter le fichier de configuration Travis CI (
.travis.yml
). - Composer-Multitest - Vous permet d'exécuter un script Composer sur plusieurs versions PHP installées localement, gérées par PHPBrew ou PHPenv.
- ScriptsDev - Vous permet d'utiliser une section
scripts-dev
, qui déclenche des scripts uniquement en mode développement. - PhantomJS-Installer - Un package Composer qui installe le binaire PhantomJS (Linux, Windows, Mac) dans /bin de votre projet.
- Composer-Vendor-Cleanup - Un script qui supprime les fichiers inutiles sur liste blanche (comme les tests/docs, etc.) du répertoire du fournisseur.
- Composer-Substitution-Plugin - Un plugin Composer remplaçant les espaces réservés dans la section
scripts
par des valeurs dynamiques.
Services
- Dependabot - Dependabot est un service de mise à jour des dépendances. Il surveille et met à jour vos dépendances en envoyant une pull-request. Le service est gratuit pour les dépôts publics et les dépôts de comptes personnels.
Tutoriels
- Un guide pour débutants sur Composer
- Un tutoriel Composer court et simple
- Gestion facile des packages avec Composer
- Gestion des dépendances PHP avec Composer
- Introduction au compositeur
- Tutoriel PHP Composer Magento par Alan Storm
- Création et utilisation de packages Composer
Blogues
- Jordi Boggiano (seldaek)
- Nils Adermann (naderman)
- Indicateurs de stabilité du compositeur
- Gestion des versions du compositeur
- Le long voyage pour rendre PHP Composer efficace et rapide en termes de mémoire (toflar)
Vidéos
- Meilleures pratiques des compositeurs 2018 - Nils Adermann @ scotphp18
- Meilleures pratiques des compositeurs 2018 - Nils Adermann @ phpday 2018
- La gestion des dépendances ne se résume pas à exécuter "composer update" - Nils Adermann @ phpsrb17
- Meilleures pratiques du compositeur — Jordi Boggiano @ phptek 2015
- Le monde merveilleux du compositeur
- Démarrage rapide du compositeur PHP
- Comment Composer a contribué à façonner la nouvelle façon d'écrire PHP - Nils Adermann @ Drupal Camp Frankfurt
- Gestion des packages de compositeur - Nils Adermann @ T3CON12DE
- Compositeur 2 - Jordi Boggiano @ groupe d'utilisateurs Symfony UK 2020
- Leçons apprises en construisant les composants internes de Composer - Jordi Boggiano @ CODEiD Odessa PHP Conference 2017
Diapositives
- Diapositives de Nils Adermann
- Source : https://naderman.de/slippy/src/
- PHP réinventé - Comment Composer a contribué à façonner la nouvelle façon d'écrire PHP
- Mise à jour du compositeur
- Gestion des dépendances avec Composer PHP réinventé
- La gestion des dépendances ne se limite pas à exécuter "composer update"
- Meilleures pratiques du compositeur @ T3DD17
- Prenez le contrôle de vos dépendances avec Private Packagist
- Composer.lock démystifié
- Compoer en profondeur @ Contao Konferenz 2018
- Meilleures pratiques des compositeurs 2018
- Développer et déployer Magento avec les meilleures pratiques de Composer
- Configuration de la plate-forme Composer (check-platform-reqs) @ SymfonCon 2018
- Diapositives de Jordi Boggiano
- Source : http://slides.seld.be/
- Gestion des dépendances avec Composer (2013)
- En profondeur avec le compositeur (2013)
- Meilleures pratiques des compositeurs (2015)
- Introduction au compositeur (2015)
- Compositeur en 2016
- Leçons apprises lors de la création des éléments internes du compositeur (2018)
Packagiste
Packagist est le référentiel de packages PHP.
Configurer un miroir Packagist
- Packagist Mirror - Ce script permet de configurer un miroir packagist. Il s'agit de la version maintenue et stable de Packagist Crawler.
- Image Docker - Cette image Docker permet de créer un miroir packagiste personnalisé.
- Packagist Mirror d'Indonésie - Une autre implémentation pour créer un miroir packagist.
Miroirs Packagist
À propos des miroirs de métadonnées : https://packagist.org/mirrors
- Amérique du Nord
- Canada - packagist.org Miroir principal
- Amérique du Sud
- Brésil - packagist.com.br
- Afrique
- Afrique du Sud - packagist.co.za
- Asie
- Chine - https://pkg.xyz/, https://developer.aliyun.com/composer
- Inde - https://packagist.in/
- Japon - packagist.jp
- Corée - https://packagist.kr/
Dépôts de compositeurs
Gestionnaire de registre
- https://github.com/slince/composer-registry-manager - Le plugin vous aide à basculer entre différents référentiels de composition.
Dépôts privés
- fxpio/tug - Vous permet d'héberger un registre Composer privé sur AWS Serverless servant vos packages PHP privés, qui sont hébergés sur les services GitHub ou GitLab.
Packagiste privé
- Private Packagist Cloud - Un référentiel Composer en tant que service pour les packages privés et pour mettre en miroir les packages d'autres référentiels.
- Private Packagist Enterprise - Version auto-hébergée sur site de Private Packagist.
- Client API Private Packagist - Un client PHP pour l'API Private Packagist. Le client gère l'authentification, la génération de signatures et l'accès à tous les points de terminaison.
Représentant
- repman.io & repman-io/repman - Un gestionnaire de référentiel de packages PHP privé et un proxy Packagist.
- repman-io/composer-plugin - Ce plugin permet le téléchargement via Repman en ajoutant une URL miroir de distribution pour toutes vos dépendances (sans avoir besoin de mettre à jour le fichier
composer.lock
).
Dépôts compatibles Packagist
- WordPress Packagist – Reflète le plugin WordPress et les répertoires de thèmes en tant que référentiel Composer.
- Asset Packagist - Permet l'installation des packages Bower et NPM en tant que packages Composer natifs.
- Firegento - Un référentiel Composer fournissant des modules Magento.
- Drupal Packagist - Dépôts Composer pour les noyaux, modules et thèmes Drupal 7 et 8.
- Satis Server - Ce conteneur Docker fournit un serveur Satis et vous permet d'exécuter un référentiel Composer privé et auto-hébergé avec prise en charge de Git, Mercurial et Subversion, de l'API HTTP, de la prise en charge HTTP, du gestionnaire de webhook et des builds planifiés.
- Cloudsmith - Un SaaS de gestion de packages entièrement géré avec prise en charge PHP/Composer (et bien d'autres).
- Release Belt - Implémentation du référentiel Composer auto-hébergé pour intégrer rapidement des fichiers ZIP de versions tierces non Composer.
- Packeton - Référentiel Composer privé auto-hébergé pour les fournisseurs. Fork de packagist avec ajout de la prise en charge de l'autorisation, des utilisateurs clients, des groupes, des webhooks.
Satisfait
- GitLab-Composer - Il s'agit d'un indexeur de branches/tags pour les référentiels GitLab.
- Satisfy - Gestionnaire de référentiel Satis composer avec une interface utilisateur Web.
- Panneau de contrôle Satis - Une interface utilisateur Web simple pour gérer votre référentiel Satis avec une intégration CI en option.
- Satis Go - Un serveur web pour gérer la configuration de Satis et héberger le référentiel Composer généré.
Proxy Toran
- ToranProxy (obsolète) - En plus de fournir un référentiel de composition, ToranProxy agit comme un serveur proxy pour Packagist et GitHub.
Droit d'auteur
Dans la mesure où la loi le permet, Jens A. Koch a renoncé à tous les droits d'auteur et droits voisins ou voisins sur cette œuvre.