PHP
repo: ziadoz/awesome-php
category: Programming Languages
related: Laravel · WordPress
Awesome PHP 
A curated list of awesome PHP libraries, resources, and useful tools.
Contributing and Collaborating
Please see CONTRIBUTING, CODE-OF-CONDUCT and COLLABORATING for details.
Table of Contents
- Awesome PHP
- Composer Repositories
- Dependency Management
- Dependency Management Extras
- Frameworks
- Framework Extras
- Content Management Systems
- Components
- Micro Frameworks
- Micro Framework Extras
- Routers
- Templating
- Static Site Generators
- HTTP
- Scraping
- Middlewares
- URL
- Files
- Streams
- Dependency Injection
- Imagery
- Testing
- Continuous Integration
- Documentation
- Security
- Passwords
- Code Analysis
- Code Quality
- Static Analysis
- Architectural
- Debugging and Profiling
- Error Tracking and Monitoring Services
- Build Tools
- Task Runners
- Navigation
- Asset Management
- Geolocation
- Date and Time
- Event
- Logging
- E-commerce
- Office
- Database
- Migrations
- NoSQL
- Queue
- Search
- Command Line
- Authentication and Authorization
- Markup and CSS
- JSON
- Strings
- Numbers
- Filtering, Sanitizing and Validation
- API
- Caching and Locking
- Data Structure and Storage
- Notifications
- Deployment
- Internationalisation and Localisation
- Serverless
- Configuration
- LLMs
- Third Party APIs
- Extensions
- Miscellaneous
- Software
- Resources
Composer Repositories
Composer Repositories.
- Firegento - Magento Module Composer Repository.
- Packagist - The PHP Package Repository.
- Packalyst - The Laravel package repository.
- Private Packagist - Composer package archive as a service for PHP.
- WordPress Packagist - Manage your plugins with Composer.
Dependency Management
Libraries for dependency and package management.
- Composer - A package and dependency manager.
- Composer Installers - A multi-framework Composer library installer.
- Phive - A PHAR manager.
- Pickle - A PHP extension installer.
- Pie - The official PHP installer for extensions.
Dependency Management Extras
Extras related to dependency management.
- Composer Merge Plugin - A composer plugin to merge several
[composer](/@harrisonqian/awesome/wiki/programming-languages/composer).[json](/@harrisonqian/awesome/wiki/miscellaneous/json)files. - Composer Normalize - A plugin for normalizing
[composer](/@harrisonqian/awesome/wiki/programming-languages/composer).[json](/@harrisonqian/awesome/wiki/miscellaneous/json)files. - Composer Patches - A plugin for Composer to apply patches.
- Composer Prefer Lowest Validator - A plugin to check if minimum dependencies can be installed and tested.
- Composer Require Checker - CLI tool to analyze composer dependencies and verify that no unknown symbols are used in the sources of a package.
- Composer Unused - A CLI Tool to scan for unused composer packages.
- Repman - A private PHP package repository manager and Packagist proxy.
- Satis - A static Composer repository generator.
Frameworks
Web development frameworks.
- CakePHP - A rapid application development framework.
- CodeIgniter - A powerful PHP framework with a very small footprint.
- Ecotone - A Service Bus for PHP based on architectural principles of DDD CQRS and Event Sourcing.
- Laminas - A framework comprised of individual components (previously Zend Framework).
- Laravel - A web application framework with expressive, elegant syntax.
- Nette - A web framework comprised of mature components.
- Phalcon - A framework implemented as a C extension.
- Spiral - A high-performance PHP/Go framework.
- Symfony - A set of reusable components and a web framework.
- Tempest - A framework that gets out of your way.
- Yii2 - A fast, secure, and efficient web framework.
Framework Extras
Extras related to web development frameworks.
- CakePHP CRUD - A Rapid Application Development (RAD) plugin for CakePHP.
- Filament PHP - A powerful open source UI framework for Laravel.
- Inertia.js - An adapter for building single-page applications using server-side routing and controllers, without a separate API.
- LaravelS - An out-of-the-box adapter between Laravel/Lumen and Swoole.
- Livewire - Powerful, dynamic, front-end UIs without leaving PHP.
Content Management Systems (CMS)
Tools for managing digital content.
- Backdrop - A CMS targeting small-to-medium-sized business and non-profits (a fork of Drupal).
- Concrete5 - A CMS targeting users with a minimum of technical skills.
- CraftCMS - A flexible, user-friendly CMS for creating custom digital experiences on the web and beyond.
- Drupal - An enterprise level CMS.
- Grav - A modern flat-file CMS.
- Joomla - Another leading CMS.
- Kirby - A flat-file CMS that adapts to any project.
- Magento - A widely used open-source e-commerce platform.
- Moodle - An open-source learning platform.
- OctoberCMS - A CMS built on Laravel.
- OpenMage - Fork of EoL Magento 1 e-commerce platform.
- Pico CMS - A lightweight flat-file CMS.
- Silverstripe - A simple, flexible, and secure CMS.
- Statamic - A flat-file and Git-based CMS built on Laravel.
- Sulu - A user- and developer-friendly CMS built on the Symfony Framework.
- TYPO3 - An enterprise level CMS.
- WinterCMS - A community-maintained fork of OctoberCMS built on Laravel.
- WordPress - A blogging platform and CMS.
Components
Standalone components from web development frameworks and development groups.
- Aura - Independent components, fully decoupled from each other and from any framework.
- CakePHP Plugins - A directory of CakePHP plugins.
- Laminas Components - The components that make the Laminas Framework.
- Laravel Components - The Laravel Framework components.
- League of Extraordinary Packages - A PHP package development group.
- Spatie Open Source - A collection of open-source PHP and Laravel packages.
- Symfony Packages - Decoupled libraries for PHP applications.
Micro Frameworks
Micro frameworks and routers.
- Laravel Zero - A micro-framework for console applications.
- Mezzio - A micro-framework by Laminas.
- Minicli - Minimalist, dependency-free framework for building CLI-centric PHP applications.
- Silly - A micro-framework for CLI applications.
- Slim - Another simple micro framework.
Micro Framework Extras
Extras related to micro frameworks and routers.
- Slim Skeleton - A skeleton for Slim.
- Slim PHP View - A simple PHP renderer for Slim.
Routers
Libraries for handling application routing.
- Aura.Router - A full-featured routing library.
- Fast Route - A fast routing library.
- Klein - A flexible router.
- Route - A routing library built on top of Fast Route.
Templating
Libraries and tools for templating and lexing.
- Latte - The safest and truly intuitive templates for PHP.
- MtHaml - A PHP implementation of the HAML template language.
- Mustache - A PHP implementation of the Mustache template language.
- PHPTAL - A PHP implementation of the TAL templating language.
- Plates - A native PHP templating library.
- Smarty - A template engine to complement PHP.
- Twig - A comprehensive templating language.
Static Site Generators
Tools for pre-processing content to generate web pages.
- Cecil - A simple and powerful content-driven static site generator.
- Couscous - A tool for converting Markdown documentation into websites.
- Jigsaw - Simple static sites with Laravel's Blade.
- Sculpin - A tool that converts Markdown and Twig into static HTML.
HTTP
Libraries for working with HTTP.
- Buzz - Another HTTP client.
- Guzzle - A comprehensive HTTP client.
- HTTPlug - An HTTP client abstraction without binding to a specific implementation.
- Nyholm PSR-7 - A super lightweight PSR-7 implementation. Very strict and very fast.
- PHP VCR - A library for recording and replaying HTTP requests.
- Requests - A simple HTTP library.
- Retrofit - A library to ease creation of REST API clients.
- Saloon - A framework for building beautiful API integrations and SDKs.
- Symfony HTTP Client - A component to fetch HTTP resources synchronously or asynchronously.
- Laminas Diactoros - PSR-7 HTTP Message implementation.
Scraping
Libraries for scraping websites and detecting crawlers.
- Chrome PHP - Instrument headless Chrome/Chromium instances from PHP.
- CrawlerDetect - A PHP class for detecting bots/crawlers/spiders via the user agent.
- DiDOM - A super-fast HTML scrapper and parser.
- Embed - An information extractor from any web service or page.
- PHP Spider - A configurable and extensible PHP web spider.
- Symfony Panther - A browser testing and web crawling library for PHP and Symfony.
Middlewares
Libraries for building application using middlewares.
- PSR-15 Middlewares - Inspiring collection of handy middlewares.
- Stack - A library of stackable middleware for Symfony.
- Laminas Stratigility - Middleware for PHP built on top of PSR-7.
URL
Libraries for parsing URLs.
- PHP Domain Parser - A domain suffix parser library.
- sabre/uri - A functional URI manipulation library.
- Uri - Another URL manipulation library.
Libraries for sending and parsing email.
- CssToInlineStyles - A library to inline CSS in email templates.
- ddeboer/imap - Object-oriented, fully tested PHP IMAP library.
- Email Reply Parser - An email reply parser library.
- Fetch - An IMAP library.
- Mautic - Email marketing automation.
- PHPMailer - Another mailer solution.
- Stampie - A library for email services such as SendGrid, PostMark, MailGun and MailChimp.
- Symfony Mailer - A powerful library for creating and sending emails.
Files
Libraries for file manipulation and MIME type detection.
- CSV - A CSV data manipulation library.
- Flysystem - Abstraction for local and remote filesystems.
- Gaufrette - A filesystem abstraction layer.
- PHP FFmpeg - A wrapper for the FFmpeg video library.
- UnifiedArchive - A unified reader and writer of compressed archives.
- Parquet - PHP implementation of Parquet file format.
Streams
Libraries for working with streams.
- ByteStream - An asynchronous stream abstraction.
Dependency Injection
Libraries that implement the dependency injection design pattern.
- Aura.Di - A serializable dependency injection container with constructor and setter injection, interface and trait awareness, configuration inheritance, and much more.
- Acclimate - A common interface to dependency injection containers and service locators.
- Auryn - A recursive dependency injector.
- Container - Another flexible dependency injection container.
- Disco - A PSR-11 compatible, annotation-based dependency injection container.
- PHP-DI - A dependency injection container that supports autowiring.
- Pimple - A tiny dependency injection container.
- Symfony DI - A dependency injection container component.
Imagery
Libraries for manipulating images.
- Color Extractor - A library for extracting colours from images.
- Glide - An on-demand image manipulation library.
- Image Hash - A library for generating perceptual image hashes.
- Image Optimizer - A library for optimizing images.
- Imagine - An image manipulation library.
- Intervention Image - Another image manipulation library.
- PHP Image Workshop - Another image manipulation library.
- PHP QR Code - QR Code generator and reader.
Testing
Libraries for testing codebases and generating test data.
- Alice - An expressive fixture generation library.
- Behat - A behaviour driven development (BDD) testing framework.
- Codeception - A full stack testing framework.
- Faker - A fake data generator library.
- Foundry - A fixture factory generation library for Doctrine.
- Infection - An AST-based PHP Mutation testing framework.
- Kahlan - Full stack Unit/BDD testing framework with built-in stub, mock and code-coverage support.
- Mink - Web acceptance testing.
- Mockery - A mock object library for testing.
- Nette Tester - A productive and enjoyable parallel unit testing framework.
- ParaTest - A parallel testing library for PHPUnit.
- Pest - A testing framework with a focus on simplicity.
- Phake - Another mock object library for testing.
- PHP-Mock - A mock library for built-in PHP functions (e.g. time()).
- [PHP MySQL Engine](https://github.com/vimeo/php-mysql-engine) - A MySQL engine written in pure PHP.
- PHPSpec - A design by specification unit testing library.
- PHPT - A test tool used by PHP itself.
- PHPUnit - A unit testing framework.
- PHPUnit Polyfills - Simplifies running PHPUnit tests on multiple PHPUnit versions.
- Prophecy - A highly opinionated mocking framework.
- VFS Stream - A virtual filesystem stream wrapper for testing.
Continuous Integration
Libraries and applications for continuous integration.
- CircleCI - A continuous integration platform.
- GitLab CI - A continuous integration platform.
- Jenkins - A continuous integration platform with PHP support.
- SemaphoreCI - A continuous integration platform for open-source and private projects.
- Travis CI - A continuous integration platform.
- Setup PHP - A GitHub Action for PHP.
Documentation
Libraries for generating project documentation.
- APIGen - Another API documentation generator.
- daux.io - A documentation generator that uses Markdown files.
- phpDocumentor - A documentation generator.
- phpDox - A documentation generator for PHP projects (that is not limited to API documentation).
- Scramble - Automatically generates OpenAPI documentation from your code without annotations.
- zircote/swagger-php - Generate OpenAPI documentation for your RESTful API.
Security
Libraries for generating secure random numbers, encrypting data and scanning and testing for vulnerabilities.
- AntiXSS - A library that tries to preventing Cross-Site Scripting (XSS) attacks by blacklisting.
- Halite - A simple library for encryption using libsodium.
- Optimus - Id obfuscation based on Knuth's multiplicative hashing method.
- OWASP - Explore the world of cyber security.
- PHPGGC - A library of PHP unserializable payloads along with a tool to generate them.
- PHP Encryption - Secure PHP Encryption Library.
- PHPSecLib - A pure PHP secure communications library.
- [Roave Security Advisories](https://github.com/Roave/SecurityAdvisories) - This package ensures that your application doesn't have installed dependencies with known security vulnerabilities.
- Secure Headers - A package that adds security related headers to HTTP response.
- SQLMap - An automatic SQL injection and database takeover tool.
- Zap - An integrated penetration testing tool for web applications.
Passwords
Libraries and tools for working with and storing passwords.
- GenPhrase - A library for generating secure random passphrases.
- Password Validator - A library for validating and upgrading password hashes.
- Password-Generator - PHP library to generate random passwords.
- phpass - A portable password hashing framework.
- Zxcvbn PHP - A realistic PHP password strength estimate library based on Zxcvbn JS.
Code Analysis
Libraries and tools for analysing, parsing and manipulating codebases.
- Better Reflection - An AST-based reflection library that allows analysis and manipulation of code.
- Bladestan - A PHPStan extension for static analysis of Blade templates.
- Code Climate - An automated code review.
- Editorconfig-Checker - A command line utility which verifies that your files implement your
.editorconfigrules. - GrumPHP - A PHP code-quality tool.
- PHP AST Viewer - A tool for viewing the Abstract Syntax Tree of PHP code.
- PHP Magic Number Detector - A library that detects magic numbers in code.
- PHP Parser - A PHP parser written in PHP.
- PHP Semantic Versioning Checker - A command line utility that compares two source sets and determines the appropriate semantic versioning to apply.
- Phpactor - PHP completion, refactoring and introspection tool.
- PHPQA - A tool for running QA tools (phploc, phpcpd, phpcs, pdepend, phpmd, phpmetrics).
- Rector - A tool to upgrade and refactor code.
- Scrutinizer - A web tool to scrutinise PHP code.
- UBench - A simple micro-benchmark library.
Code Quality
Libraries for managing code quality, formatting and linting.
- CaptainHook - An easy-to-use and flexible Git hook library.
- Laravel Pint - A coding standards fixer library for Laravel.
- PHP CodeSniffer - A library that detects and can auto-fix PHP, CSS and JS coding standard violations.
- PHP CS Fixer - A coding standards fixer library.
- PHP CS Fixer Configurator - A web application to help configure PHP CS Fixer rule sets.
- PHP Mess Detector - A library that scans code for bugs, sub-optimal code, unused parameters and more.
- PHPCheckstyle - A tool to help adhere to certain coding conventions.
Static Analysis
Libraries for performing static analysis of PHP code.
- Dead Code Detector - A PHPStan extension for finding unused PHP code.
- Deptrac - A static analysis tool for enforcing dependency rules between architectural layers.
- Exakat - A static analysis engine for PHP.
- Larastan - A PHPStan wrapper for Laravel that adds static analysis to Laravel projects.
- Mago - A toolchain for PHP that aims to improve the developer experience.
- phan - A static analyzer based on PHP 7+ and the php-ast extension.
- PHP Architecture Tester - Easy-to-use architecture testing tool for PHP.
- PHPCompatibility - A PHP compatibility checker for PHP CodeSniffer.
- PHPDoc Parser - Next-gen phpDoc parser with support for intersection types and generics.
- PHP Metrics - A static metric library.
- PHPStan - A PHP Static Analysis Tool.
- Psalm - A static analysis tool for finding errors in PHP applications.
Architectural
Libraries related to design patterns, programming approaches and ways to organize code.
- Design Patterns PHP - A repository of software patterns implemented in PHP.
- Finite - A simple PHP finite state machine.
- Functional PHP - A functional programming library.
- Iter - A library that provides iteration primitives using generators.
- IterTools PHP - A library that provides functionality for working with iterable entities (similar to itertools library in Python).
- Pipeline - A pipeline pattern implementation.
- Porter - Data import abstraction library for consuming Web APIs and other data sources.
- RulerZ - A powerful rule engine and implementation of the Specification pattern.
Debugging and Profiling
Libraries and tools for debugging errors and profiling code.
- APM - Monitoring extension collecting errors and statistics into SQLite/MySQL/StatsD.
- Barbushin PHP Console - Another web debugging console using Google Chrome.
- Kint - A debugging and profiling tool.
- LaraDumps - A debugging tool for Laravel with a dedicated desktop application.
- Metrics - A simple metrics API library.
- PCOV - A self-contained code coverage compatible driver.
- PHP Console - A web debugging console.
- PHP Debug Bar - A debugging toolbar.
- PHPBench - A benchmarking framework.
- PHPSpy - A low-overhead sampling profiler.
- Symfony VarDumper - A variable dumper component.
- Tracy - A simple error detection, logging and time measuring library.
- Trap - An extended variable dumper with a web interface and IDE plugin.
- Whoops - A pretty error-handling library.
- xDebug - A debug and profile tool for PHP.
- XHProf - A profiling tool originally developed by Facebook.
- Z-Ray - A debug and profile tool for Zend Server.
Error Tracking and Monitoring Services
Self-hosted or cloud-based application performance monitoring & error tracking tools
- Blackfire - A low-overhead code profiler.
- Buggregator - A debug server that aggregates var-dumps, profiling data, emails, logs and Sentry events.
- BugSnag - Error and Real User Monitoring.
- Honeybadger - Error Tracking & Application Monitoring for Developers.
- Rollbar - Error Logging & Tracking Service for Software Teams.
- Sentry - Application Performance Monitoring & Error Tracking Software.
- Tideways - Monitoring and profiling tool.
Build Tools
Project build and automation tools.
- Box - A utility to build PHAR files.
- PHPacker - A PHAR builder that compiles PHP apps to standalone executables.
- Phing - A PHP project build system inspired by Apache Ant.
- RMT - A library for versioning and releasing software.
Task Runners
Libraries for automating and running tasks.
- Jobby - A PHP cron job manager without modifying crontab.
- Robo - A PHP task runner with object-oriented configurations.
Navigation
Tools for building navigation structures.
Asset Management
Tools for managing, compressing and minifying website assets.
- JShrink - A JavaScript minifier library.
- Laravel Mix - An elegant wrapper around Webpack for the 80% use case.
- Symfony Asset - Manages URL generation and versioning of web assets.
- Symfony Encore - A simple but powerful API for processing and compiling assets built around Webpack.
Geolocation
Libraries for geocoding addresses and working with latitudes and longitudes.
truncated — full list on GitHub