Merge branch 'master' into patch-2

This commit is contained in:
Jamie York 2021-06-17 09:50:08 +01:00 committed by GitHub
commit c46a07ae4a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 125 additions and 123 deletions

View File

@ -8,14 +8,14 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v1 - uses: actions/checkout@v1
- name: Set up Ruby 2.6 - name: Set up Ruby
uses: actions/setup-ruby@v1 uses: actions/setup-ruby@v1
with: with:
ruby-version: 2.6.x ruby-version: 2.7.x
- name: Install Awesome Bot - name: Install Awesome Bot
run: gem install awesome_bot run: gem install awesome_bot
- name: Run Awesome Bot - name: Run Awesome Bot
run: awesome_bot README.md --white-list igor.io,symfony,toranproxy.com,vagrantup.com,3v4l.org,voicesoftheelephpant.com,drupal.org run: awesome_bot README.md --request-delay 1 --allow-dupe --white-list igor.io,symfony,toranproxy.com,vagrantup.com,3v4l.org,voicesoftheelephpant.com,drupal.org,oreilly.com
- uses: actions/upload-artifact@v1 - uses: actions/upload-artifact@v1
if: failure() if: failure()
with: with:

View File

@ -1,9 +0,0 @@
language: ruby
rvm:
- 2.2
before_script:
- gem install awesome_bot
script:
- awesome_bot README.md --white-list igor.io,symfony,toranproxy.com,vagrantup.com,3v4l.org,voicesoftheelephpant.com,drupal.org
notifications:
email: false

View File

@ -1,7 +1,7 @@
# Contribution Guidelines # Contribution Guidelines
Unfortunately, not every library, tool or framework can be considered for inclusion. The aim of Awesome PHP is to be a concise list of noteworthy and interesting software written in modern PHP. Therefore, suggested software should: Unfortunately, not every library, tool or framework can be considered for inclusion. The aim of Awesome PHP is to be a concise list of noteworthy and interesting software written in modern PHP. Therefore, suggested software should:
1. Be widely recommended regardless of personal opinion 1. Be widely recommended
2. Well known or discussed within the PHP community 2. Well known or discussed within the PHP community
3. Be unique in its approach or function 3. Be unique in its approach or function
4. Fill a niche gap in the market 4. Fill a niche gap in the market
@ -10,7 +10,7 @@ Self-promotion is frowned upon, so please consider seriously whether your projec
Also, please ensure your pull request adheres to the following guidelines: Also, please ensure your pull request adheres to the following guidelines:
* Software that is PHP 7.0+, Composer-installable, PSR compliant, semantically versioned, unit tested, actively maintained and well documented in English is preferred. * Software that is PHP 7.0+, Composer-installable, PSR compliant, semantically versioned, unit tested, actively maintained and well documented in English.
* Please search previous suggestions before making a new one, as yours may be a duplicate. * Please search previous suggestions before making a new one, as yours may be a duplicate.
* Enter a meaningful pull request description. * Enter a meaningful pull request description.
* Please make an individual commit for each suggestion in a separate pull request. * Please make an individual commit for each suggestion in a separate pull request.
@ -22,5 +22,6 @@ Also, please ensure your pull request adheres to the following guidelines:
* End all descriptions with a full stop/period. * End all descriptions with a full stop/period.
* Check your spelling and grammar. * Check your spelling and grammar.
* Make sure your text editor is set to remove trailing whitespace. * Make sure your text editor is set to remove trailing whitespace.
* Your entry has been added alphabetically within the category.
Thank you for your suggestions! Thank you for your suggestions!

228
README.md
View File

@ -80,10 +80,11 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
- [Infrastructure](#infrastructure) - [Infrastructure](#infrastructure)
- [Resources](#resources) - [Resources](#resources)
- [PHP Websites](#php-websites) - [PHP Websites](#php-websites)
- [Other Websites](#other-websites)
- [PHP Books](#php-books) - [PHP Books](#php-books)
- [PHP Videos](#php-videos) - [PHP Videos](#php-videos)
- [PHP Podcasts](#php-podcasts) - [PHP Podcasts](#php-podcasts)
- [PHP Newsletters](#php-newsletters)
- [PHP Magazines](#php-magazines)
- [PHP Reading](#php-reading) - [PHP Reading](#php-reading)
- [PHP Internals Reading](#php-internals-reading) - [PHP Internals Reading](#php-internals-reading)
@ -94,7 +95,6 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
* [Packagist](https://packagist.org/) - The PHP Package Repository. * [Packagist](https://packagist.org/) - The PHP Package Repository.
* [Private Packagist](https://packagist.com/) - Composer package archive as a service for PHP. * [Private Packagist](https://packagist.com/) - Composer package archive as a service for PHP.
* [WordPress Packagist](https://wpackagist.org/) - Manage your plugins with Composer. * [WordPress Packagist](https://wpackagist.org/) - Manage your plugins with Composer.
* [Zend Framework Packages](https://packages.zendframework.com/) - Zend Framework Composer Repository.
### Dependency Management ### Dependency Management
*Libraries for dependency and package management.* *Libraries for dependency and package management.*
@ -109,9 +109,11 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
* [Composed](https://github.com/joshdifabio/composed) - A library to parse your project's Composer environment at runtime. * [Composed](https://github.com/joshdifabio/composed) - A library to parse your project's Composer environment at runtime.
* [Composer Merge Plugin](https://github.com/wikimedia/composer-merge-plugin) - A composer plugin to merge several composer.json files. * [Composer Merge Plugin](https://github.com/wikimedia/composer-merge-plugin) - A composer plugin to merge several composer.json files.
* [Composer Patches](https://github.com/cweagans/composer-patches) - A plugin for Composer to apply patches.
* [Compoer Require Checker](https://github.com/maglnet/ComposerRequireChecker) - CLI tool to analyze composer dependencies and verify that no unknown symbols are used in the sources of a package. * [Compoer Require Checker](https://github.com/maglnet/ComposerRequireChecker) - CLI tool to analyze composer dependencies and verify that no unknown symbols are used in the sources of a package.
* [Composer Unused](https://github.com/composer-unused/composer-unused) - A CLI Tool to scan for unused composer packages. * [Composer Unused](https://github.com/composer-unused/composer-unused) - A CLI Tool to scan for unused composer packages.
* [Prestissimo](https://github.com/hirak/prestissimo) - A composer plugin which enables parallel install process. * [Prestissimo](https://github.com/hirak/prestissimo) - A composer plugin which enables parallel install process.
* [Repman](https://repman.io) - A private PHP package repository manager and Packagist proxy.
* [Satis](https://github.com/composer/satis) - A static Composer repository generator. * [Satis](https://github.com/composer/satis) - A static Composer repository generator.
* [tooly](https://github.com/tommy-muehle/tooly-composer-script) - A library to manage PHAR files in project using Composer. * [tooly](https://github.com/tommy-muehle/tooly-composer-script) - A library to manage PHAR files in project using Composer.
* [Toran Proxy](https://toranproxy.com) - A static Composer repository and proxy. * [Toran Proxy](https://toranproxy.com) - A static Composer repository and proxy.
@ -119,16 +121,14 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
### Frameworks ### Frameworks
*Web development frameworks.* *Web development frameworks.*
* [Aura Framework](http://auraphp.com/framework/) - A framework built from independent components. * [CakePHP](https://cakephp.org/) - A rapid application development framework.
* [CakePHP](https://cakephp.org/) - A rapid application development framework (CP). * [Laminas](https://getlaminas.org/) - A framework comprised of individual components (previously Zend Framework).
* [Laravel 6](https://laravel.com/) - Another PHP framework (L6). * [Laravel](https://laravel.com/) - A web application framework with expressive, elegant syntax.
* [Nette](https://nette.org) - Another framework comprised of individual components. * [Nette](https://nette.org) - A web framework comprised of mature components.
* [Phalcon](https://phalcon.io/en-us) - A framework implemented as a C extension. * [Phalcon](https://phalcon.io/en-us) - A framework implemented as a C extension.
* [PPI Framework 2](https://github.com/ppi) - An interoperability framework. * [Spiral](https://spiral.dev/) - A high performance PHP/Go framework.
* [Symfony](https://symfony.com/) - A framework comprised of individual components (SF). * [Symfony](https://symfony.com/) - A set of reuseable components and a web framework.
* [Yii2](https://github.com/yiisoft/yii2/) - Another PHP framework. * [Yii2](https://github.com/yiisoft/yii2/) - A fast, secure, and efficient web framework.
* [Zend Framework 3](https://framework.zend.com/learn) - A framework comprised of individual components (ZF3).
* [Ice](https://www.iceframework.org/) - Another simple and fast PHP framework delivered as C-extension.
### Framework Extras ### Framework Extras
*Extras related to web development frameworks.* *Extras related to web development frameworks.*
@ -140,14 +140,19 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
### Content Management Systems (CMS) ### Content Management Systems (CMS)
*Tools for managing digital content.* *Tools for managing digital content.*
* [Backdrop](https://backdropcms.org) - A CMS targeting small-to-medium sized business and non-profits (a fork of Drupal). * [Backdrop](https://backdropcms.org) - A CMS targeting small-to-medium sized business and non-profits (a fork of Drupal).
* [Concrete5](https://www.concrete5.org/) - A CMS targeting users with a minimum of technical skills. * [Concrete5](https://www.concrete5.org/) - A CMS targeting users with a minimum of technical skills.
* [CraftCMS](https://github.com/craftcms/cms) - A flexible, user-friendly CMS for creating custom digital experiences on the web and beyond.
* [Drupal](https://www.drupal.org) - An enterprise level CMS. * [Drupal](https://www.drupal.org) - An enterprise level CMS.
* [Grav](https://github.com/getgrav/grav) - A modern flat-file CMS. * [Grav](https://github.com/getgrav/grav) - A modern flat-file CMS.
* [Joomla](https://www.joomla.org/) - Another leading CMS. * [Joomla](https://www.joomla.org/) - Another leading CMS.
* [Kirby](https://getkirby.com/) - A flat-file CMS that adapts to any project.
* [Magento](https://magento.com/) - The most popular ecommerce platform. * [Magento](https://magento.com/) - The most popular ecommerce platform.
* [WordPress](https://wordpress.org/) - A blogging platform and CMS.
* [Moodle](https://moodle.org/) - An open-source learning platform. * [Moodle](https://moodle.org/) - An open-source learning platform.
* [Pico CMS](http://picocms.org/) - A stupidly simple, blazing fast, flat file CMS.
* [Statamic](https://statamic.com/) - Build beautiful, easy to manage websites.
* [WordPress](https://wordpress.org/) - A blogging platform and CMS.
### Components ### Components
*Standalone components from web development frameworks and development groups.* *Standalone components from web development frameworks and development groups.*
@ -155,26 +160,25 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
* [Aura](http://auraphp.com/) - Independent components, fully decoupled from each other and from any framework. * [Aura](http://auraphp.com/) - Independent components, fully decoupled from each other and from any framework.
* [CakePHP Plugins](https://plugins.cakephp.org/) - A directory of CakePHP plugins. * [CakePHP Plugins](https://plugins.cakephp.org/) - A directory of CakePHP plugins.
* [Hoa Project](https://hoa-project.net/En/) - Another package of PHP components. * [Hoa Project](https://hoa-project.net/En/) - Another package of PHP components.
* [Laravel Components](https://github.com/illuminate) - The Laravel Framework components.
* [League of Extraordinary Packages](https://thephpleague.com/) - A PHP package development group. * [League of Extraordinary Packages](https://thephpleague.com/) - A PHP package development group.
* [Spatie Open Source](https://spatie.be/open-source/packages) - A collection of open source PHP and Laravel packages. * [Spatie Open Source](https://spatie.be/open-source) - A collection of open source PHP and Laravel packages.
* [Symfony Components](https://symfony.com/doc/master/components/index.html) - The components that make Symfony. * [Symfony Components](https://symfony.com/components) - The components that make Symfony.
* [Zend Framework Components](https://docs.zendframework.com/) - The components that make Zend Framework. * [Laminas Components](https://docs.laminas.dev/components/) - The components that make the Laminas Framework.
### Micro Frameworks ### Micro Frameworks
*Micro frameworks and routers.* *Micro frameworks and routers.*
* [Bullet PHP](http://bulletphp.com/) - A micro framework for building REST APIs.
* [Laravel-Zero](https://laravel-zero.com) - A micro-framework for console applications. * [Laravel-Zero](https://laravel-zero.com) - A micro-framework for console applications.
* [Lumen](https://lumen.laravel.com) - A micro-framework by Laravel. * [Lumen](https://lumen.laravel.com) - A micro-framework by Laravel.
* [Mezzio](https://getexpressive.org/) - A micro-framework by Laminas.
* [Radar](https://github.com/radarphp/Radar.Adr) - An Action-Domain-Responder implementation for PHP. * [Radar](https://github.com/radarphp/Radar.Adr) - An Action-Domain-Responder implementation for PHP.
* [Silly](https://github.com/mnapoli/silly) - A micro-framework for CLI applications.
* [Slim](https://www.slimframework.com/) - Another simple micro framework. * [Slim](https://www.slimframework.com/) - Another simple micro framework.
* [Expressive](https://getexpressive.org/) - A micro-framework by Zend.
### Micro Framework Extras ### Micro Framework Extras
*Extras related to micro frameworks and routers.* *Extras related to micro frameworks and routers.*
* [Silex Skeleton](https://github.com/silexphp/Silex-Skeleton) - A project skeleton for Silex.
* [Silex Web Profiler](https://github.com/silexphp/Silex-WebProfiler) - A web debug toolbar for Silex.
* [Slim Skeleton](https://github.com/slimphp/Slim-Skeleton) - A skeleton for Slim. * [Slim Skeleton](https://github.com/slimphp/Slim-Skeleton) - A skeleton for Slim.
* [Slim Twig View](https://github.com/slimphp/Slim-Views) - Integrate Twig into Slim. * [Slim Twig View](https://github.com/slimphp/Slim-Views) - Integrate Twig into Slim.
* [Slim PHP View](https://github.com/slimphp/PHP-View) - A simple PHP renderer for Slim. * [Slim PHP View](https://github.com/slimphp/PHP-View) - A simple PHP renderer for Slim.
@ -191,20 +195,18 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
### Templating ### Templating
*Libraries and tools for templating and lexing.* *Libraries and tools for templating and lexing.*
* [Aura.View](https://github.com/auraphp/Aura.View) - Provides TemplateView and TwoStepView using PHP as the tempting language, with support for partials, sections, and helpers.
* [Foil](https://github.com/FoilPHP/Foil) - Another native PHP templating library.
* [MtHaml](https://github.com/arnaud-lb/MtHaml) - A PHP implementation of the HAML template language. * [MtHaml](https://github.com/arnaud-lb/MtHaml) - A PHP implementation of the HAML template language.
* [Mustache](https://github.com/bobthecow/mustache.php) - A PHP implementation of the Mustache template language. * [Mustache](https://github.com/bobthecow/mustache.php) - A PHP implementation of the Mustache template language.
* [PHPTAL](https://phptal.org/) - A PHP implementation of the [TAL](https://en.wikipedia.org/wiki/Template_Attribute_Language) templating language. * [PHPTAL](https://phptal.org/) - A PHP implementation of the [TAL](https://en.wikipedia.org/wiki/Template_Attribute_Language) templating language.
* [Plates](http://platesphp.com/) - A native PHP templating library. * [Plates](http://platesphp.com/) - A native PHP templating library.
* [Smarty](https://www.smarty.net/) - A template engine to complement PHP. * [Smarty](https://www.smarty.net/) - A template engine to complement PHP.
* [Twig](https://twig.symfony.com/) - A comprehensive templating language. * [Twig](https://twig.symfony.com/) - A comprehensive templating language.
* [Tale Jade](https://github.com/Talesoft/tale-jade) - A PHP implementation of the Jade template language.
### Static Site Generators ### Static Site Generators
*Tools for pre-processing content to generate web pages.* *Tools for pre-processing content to generate web pages.*
* [Couscous](http://couscous.io) - Couscous turns Markdown documentation into beautiful websites. It's GitHub Pages on steroids. * [Couscous](http://couscous.io) - Couscous turns Markdown documentation into beautiful websites. It's GitHub Pages on steroids.
* [Jigsaw](http://jigsaw.tighten.co/) - Simple static sites with Laravel's Blade.
* [Sculpin](https://sculpin.io) - A tool that converts Markdown and Twig into static HTML. * [Sculpin](https://sculpin.io) - A tool that converts Markdown and Twig into static HTML.
* [Spress](http://spress.yosymfony.com) - An extensible tool that converts Markdown and Twig into HTML. * [Spress](http://spress.yosymfony.com) - An extensible tool that converts Markdown and Twig into HTML.
@ -214,11 +216,12 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
* [Buzz](https://github.com/kriswallsmith/Buzz) - Another HTTP client. * [Buzz](https://github.com/kriswallsmith/Buzz) - Another HTTP client.
* [Guzzle]( https://github.com/guzzle/guzzle) - A comprehensive HTTP client. * [Guzzle]( https://github.com/guzzle/guzzle) - A comprehensive HTTP client.
* [HTTPlug](http://httplug.io) - An HTTP client abstraction without binding to a specific implementation. * [HTTPlug](http://httplug.io) - An HTTP client abstraction without binding to a specific implementation.
* [Nyholm PSR-7](https://github.com/Nyholm/psr7) - A super lightweight PSR-7 implementation. Very strict and very fast.
* [PHP VCR](https://php-vcr.github.io/) - A library for recording and replaying HTTP requests. * [PHP VCR](https://php-vcr.github.io/) - A library for recording and replaying HTTP requests.
* [Requests](https://github.com/rmccue/Requests) - A simple HTTP library. * [Requests](https://github.com/rmccue/Requests) - A simple HTTP library.
* [Retrofit](https://github.com/tebru/retrofit-php) - A library to ease creation of REST API clients. * [Retrofit](https://github.com/tebru/retrofit-php) - A library to ease creation of REST API clients.
* [Symfony HTTP Client](https://github.com/symfony/http-client) - A component to fetch HTTP resources synchronously or asynchronously. * [Symfony HTTP Client](https://github.com/symfony/http-client) - A component to fetch HTTP resources synchronously or asynchronously.
* [zend-diactoros](https://github.com/zendframework/zend-diactoros) - PSR-7 HTTP Message implementation. * [Laminas Diactoros](https://github.com/laminas/laminas-diactoros) - PSR-7 HTTP Message implementation.
### Scraping ### Scraping
*Libraries for scraping websites.* *Libraries for scraping websites.*
@ -232,11 +235,10 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
### Middlewares ### Middlewares
*Libraries for building application using middlewares.* *Libraries for building application using middlewares.*
* [Expressive](https://zendframework.github.io/zend-expressive/) - PSR-7 Middleware framework from Zend. * [PSR-7 Middlewares](https://github.com/oscarotero/psr7-middlewares) - Inspiring collection of handy middlewares.
* [PSR7-Middlewares](https://github.com/oscarotero/psr7-middlewares) - Inspiring collection of handy middlewares.
* [Relay](https://github.com/relayphp/Relay.Relay) - A PHP 5.5 PSR-7 middleware dispatcher. * [Relay](https://github.com/relayphp/Relay.Relay) - A PHP 5.5 PSR-7 middleware dispatcher.
* [Stack](https://github.com/stackphp) - A library of stackable middleware for Silex/Symfony. * [Stack](https://github.com/stackphp) - A library of stackable middleware for Symfony.
* [zend-stratigility](https://github.com/zendframework/zend-stratigility) - Middleware for PHP built on top of PSR-7. * [Laminas Stratigility](https://github.com/laminas/laminas-stratigility) - Middleware for PHP built on top of PSR-7.
### URL ### URL
*Libraries for parsing URLs.* *Libraries for parsing URLs.*
@ -255,14 +257,16 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
* [Fetch](https://github.com/tedious/Fetch) - An IMAP library. * [Fetch](https://github.com/tedious/Fetch) - An IMAP library.
* [Mautic](https://github.com/mautic/mautic) - Email marketing automation * [Mautic](https://github.com/mautic/mautic) - Email marketing automation
* [PHPMailer](https://github.com/PHPMailer/PHPMailer) - Another mailer solution. * [PHPMailer](https://github.com/PHPMailer/PHPMailer) - Another mailer solution.
* [Stampie](https://github.com/Stampie/Stampie) - A library for email services such as [SendGrid](https://sendgrid.com/), [PostMark](https://postmarkapp.com), [MailGun](https://www.mailgun.com/) and [Mandrill](https://www.mandrill.com). * [PHP IMAP](https://github.com/barbushin/php-imap) - A library to access mailboxes via POP3, IMAP and NNTP.
* [Stampie](https://github.com/Stampie/Stampie) - A library for email services such as [SendGrid](https://sendgrid.com/), [PostMark](https://postmarkapp.com), [MailGun](https://www.mailgun.com/) and [Mandrill](https://mailchimp.com/features/transactional-email/).
* [SwiftMailer](https://swiftmailer.symfony.com) - A mailer solution. * [SwiftMailer](https://swiftmailer.symfony.com) - A mailer solution.
* [Symfony Mailer](https://github.com/symfony/mailer) - A powerful library for creating and sending emails.
### Files ### Files
*Libraries for file manipulation and MIME type detection.* *Libraries for file manipulation and MIME type detection.*
* [CSV](https://github.com/thephpleague/csv) - A CSV data manipulation library. * [CSV](https://github.com/thephpleague/csv) - A CSV data manipulation library.
* [Flysystem](https://github.com/thephpleague/Flysystem) - Another filesystem abstraction layer. * [Flysystem](https://github.com/thephpleague/Flysystem) - Abstraction for local and remote filesystems.
* [Gaufrette](https://github.com/KnpLabs/Gaufrette) - A filesystem abstraction layer. * [Gaufrette](https://github.com/KnpLabs/Gaufrette) - A filesystem abstraction layer.
* [Hoa Mime](https://github.com/hoaproject/Mime) - Another MIME detection library. * [Hoa Mime](https://github.com/hoaproject/Mime) - Another MIME detection library.
* [PHP FFmpeg](https://github.com/PHP-FFmpeg/PHP-FFmpeg/) - A wrapper for the [FFmpeg](https://www.ffmpeg.org/) video library. * [PHP FFmpeg](https://github.com/PHP-FFmpeg/PHP-FFmpeg/) - A wrapper for the [FFmpeg](https://www.ffmpeg.org/) video library.
@ -271,6 +275,7 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
### Streams ### Streams
*Libraries for working with streams.* *Libraries for working with streams.*
* [ByteStream](https://amphp.org/byte-stream/) - An asynchronous stream abstraction.
* [Streamer](https://github.com/fzaninotto/Streamer) - A simple object-orientated stream wrapper library. * [Streamer](https://github.com/fzaninotto/Streamer) - A simple object-orientated stream wrapper library.
### Dependency Injection ### Dependency Injection
@ -281,9 +286,9 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
* [Auryn](https://github.com/rdlowrey/Auryn) - A recursive dependency injector. * [Auryn](https://github.com/rdlowrey/Auryn) - A recursive dependency injector.
* [Container](https://github.com/thephpleague/container) - Another flexible dependency injection container. * [Container](https://github.com/thephpleague/container) - Another flexible dependency injection container.
* [Disco](https://github.com/bitExpert/disco) - A PSR-11 compatible, annotation-based dependency injection container. * [Disco](https://github.com/bitExpert/disco) - A PSR-11 compatible, annotation-based dependency injection container.
* [PHP-DI](http://php-di.org/) - A dependency injection container that supports autowiring. * [PHP-DI](https://php-di.org/) - A dependency injection container that supports autowiring.
* [Pimple](https://pimple.symfony.com/) - A tiny dependency injection container. * [Pimple](https://pimple.symfony.com/) - A tiny dependency injection container.
* [Symfony DI](https://github.com/symfony/dependency-injection) - A dependency injection container component (SF). * [Symfony DI](https://github.com/symfony/dependency-injection) - A dependency injection container component.
### Imagery ### Imagery
*Libraries for manipulating images.* *Libraries for manipulating images.*
@ -302,18 +307,21 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
* [Alice](https://github.com/nelmio/alice) - An expressive fixture generation library. * [Alice](https://github.com/nelmio/alice) - An expressive fixture generation library.
* [AspectMock](https://github.com/Codeception/AspectMock) - A mocking framework for PHPUnit/Codeception. * [AspectMock](https://github.com/Codeception/AspectMock) - A mocking framework for PHPUnit/Codeception.
* [Atoum](https://github.com/atoum/atoum) - A simple testing library. * [Atoum](https://github.com/atoum/atoum) - A simple testing library.
* [Behat](http://docs.behat.org/en/v2.5/) - A behaviour driven development (BDD) testing framework. * [Behat](https://docs.behat.org/en/latest/) - A behaviour driven development (BDD) testing framework.
* [Codeception](https://github.com/Codeception/Codeception) - A full stack testing framework. * [Codeception](https://github.com/Codeception/Codeception) - A full stack testing framework.
* [Faker](https://github.com/fzaninotto/Faker) - A fake data generator library. * [Faker](https://github.com/fakerphp/faker) - A fake data generator library.
* [HTTP Mock](https://github.com/InterNations/http-mock) - A library for mocking HTTP requests in unit tests. * [HTTP Mock](https://github.com/InterNations/http-mock) - A library for mocking HTTP requests in unit tests.
* [Infection](https://github.com/infection/infection) - An AST-based PHP Mutation testing framework.
* [Kahlan](https://github.com/kahlan/kahlan) - Full stack Unit/BDD testing framework with built-in stub, mock and code-coverage support. * [Kahlan](https://github.com/kahlan/kahlan) - Full stack Unit/BDD testing framework with built-in stub, mock and code-coverage support.
* [Mink](http://mink.behat.org/en/latest/) - Web acceptance testing. * [Mink](http://mink.behat.org/en/latest/) - Web acceptance testing.
* [Mockery](https://github.com/mockery/mockery) - A mock object library for testing. * [Mockery](https://github.com/mockery/mockery) - A mock object library for testing.
* [ParaTest](https://github.com/paratestphp/paratest) - A parallel testing library for PHPUnit. * [ParaTest](https://github.com/paratestphp/paratest) - A parallel testing library for PHPUnit.
* [Pest](https://pestphp.com/) - A testing framework with a focus on simplicity.
* [Peridot](https://github.com/peridot-php/peridot) - An event driven test framework. * [Peridot](https://github.com/peridot-php/peridot) - An event driven test framework.
* [Phake](https://github.com/mlively/Phake) - Another mock object library for testing. * [Phake](https://github.com/mlively/Phake) - Another mock object library for testing.
* [Pho](https://github.com/danielstjules/pho) - Another behaviour driven development testing framework. * [Pho](https://github.com/danielstjules/pho) - Another behaviour driven development testing framework.
* [PHP-Mock](https://github.com/php-mock/php-mock) - A mock library for built-in PHP functions (e.g. time()). * [PHP-Mock](https://github.com/php-mock/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](https://github.com/phpspec/phpspec) - A design by specification unit testing library. * [PHPSpec](https://github.com/phpspec/phpspec) - A design by specification unit testing library.
* [PHPT](https://qa.php.net/write-test.php) - A test tool used by PHP itself. * [PHPT](https://qa.php.net/write-test.php) - A test tool used by PHP itself.
* [PHPUnit](https://github.com/sebastianbergmann/phpunit) - A unit testing framework. * [PHPUnit](https://github.com/sebastianbergmann/phpunit) - A unit testing framework.
@ -325,7 +333,7 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
* [CircleCI](https://circleci.com) - A continuous integration platform. * [CircleCI](https://circleci.com) - A continuous integration platform.
* [GitlabCi](https://about.gitlab.com/stages-devops-lifecycle/continuous-integration/) - Let GitLab CI test, build, deploy your code. TravisCi like. * [GitlabCi](https://about.gitlab.com/stages-devops-lifecycle/continuous-integration/) - Let GitLab CI test, build, deploy your code. TravisCi like.
* [Jenkins](https://jenkins.io/index.html) - A continuous integration platform with [PHP support](http://jenkins-php.org/index.html). * [Jenkins](https://www.jenkins.io/) - A continuous integration platform with [PHP support](https://www.jenkins.io/solutions/php/).
* [JoliCi](https://github.com/jolicode/JoliCi) - A continuous integration client written in PHP and powered by Docker. * [JoliCi](https://github.com/jolicode/JoliCi) - A continuous integration client written in PHP and powered by Docker.
* [PHPCI](https://github.com/dancryer/phpci) - An open source continuous integration platform for PHP. * [PHPCI](https://github.com/dancryer/phpci) - An open source continuous integration platform for PHP.
* [SemaphoreCI](https://semaphoreci.com/) - A continuous integration platform for open source and private projects. * [SemaphoreCI](https://semaphoreci.com/) - A continuous integration platform for open source and private projects.
@ -337,27 +345,28 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
*Libraries for generating project documentation.* *Libraries for generating project documentation.*
* [APIGen](https://github.com/apigen/apigen) - Another API documentation generator. * [APIGen](https://github.com/apigen/apigen) - Another API documentation generator.
* [daux.io](https://github.com/justinwalsh/daux.io) - A documentation generator which uses Markdown files. * [daux.io](https://github.com/dauxio/daux.io) - A documentation generator which uses Markdown files.
* [PHP Documentor 2](https://github.com/phpDocumentor/phpDocumentor) - A documentation generator. * [PHP Documentor 2](https://github.com/phpDocumentor/phpDocumentor) - A documentation generator.
* [phpDox](http://phpdox.de/) - A documentation generator for PHP projects (that is not limited to API documentation). * [phpDox](http://phpdox.de/) - A documentation generator for PHP projects (that is not limited to API documentation).
* [Sami](https://github.com/FriendsOfPHP/Sami) - An API documentation generator.
### Security ### Security
*Libraries for generating secure random numbers, encrypting data and scanning for vulnerabilities.* *Libraries for generating secure random numbers, encrypting data and scanning and testing for vulnerabilities.*
* [Halite](https://paragonie.com/project/halite) - A simple library for encryption using [libsodium](https://github.com/jedisct1/libsodium). * [Halite](https://paragonie.com/project/halite) - A simple library for encryption using [libsodium](https://github.com/jedisct1/libsodium).
* [HTML Purifier](https://github.com/ezyang/htmlpurifier) - A standards compliant HTML filter. * [HTML Purifier](https://github.com/ezyang/htmlpurifier) - A standards compliant HTML filter.
* [IniScan](https://github.com/psecio/iniscan) - A tool that scans PHP INI files for security. * [IniScan](https://github.com/psecio/iniscan) - A tool that scans PHP INI files for security.
* [Optimus](https://github.com/jenssegers/optimus) - Id obfuscation based on Knuth's multiplicative hashing method. * [Optimus](https://github.com/jenssegers/optimus) - Id obfuscation based on Knuth's multiplicative hashing method.
* [PHPGGC](https://github.com/ambionics/phpggc) - A library of PHP unserializeable payloads along with a tool to generate them.
* [PHP Encryption](https://github.com/defuse/php-encryption) - Secure PHP Encryption Library. * [PHP Encryption](https://github.com/defuse/php-encryption) - Secure PHP Encryption Library.
* [PHP SSH](https://github.com/Herzult/php-ssh) - An experimental object orientated SSH wrapper library. * [PHP SSH](https://github.com/Herzult/php-ssh) - An experimental object orientated SSH wrapper library.
* [PHPSecLib](http://phpseclib.sourceforge.net/) - A pure PHP secure communications library. * [PHPSecLib](http://phpseclib.sourceforge.net/) - A pure PHP secure communications library.
* [random_compat](https://github.com/paragonie/random_compat) - PHP 5.x support for `random_bytes()` and `random_int()` * [random_compat](https://github.com/paragonie/random_compat) - PHP 5.x support for `random_bytes()` and `random_int()`
* [RandomLib](https://github.com/ircmaxell/RandomLib) - A library for generating random numbers and strings. * [RandomLib](https://github.com/ircmaxell/RandomLib) - A library for generating random numbers and strings.
* [Symfony Security Monitoring](https://security.symfony.com/) - A web tool to check your Composer dependencies for security advisories, previously known as "SensioLabs Security Check". * [Symfony Security Monitoring](https://security.symfony.com/) - A web tool to check your Composer dependencies for security advisories, previously known as "SensioLabs Security Check".
* [SQLMap](https://github.com/sqlmapproject/sqlmap) - An automatic SQL injection and database takeover tool.
* [TCrypto](https://github.com/timoh6/TCrypto) - A simple encrypted key-value storage library. * [TCrypto](https://github.com/timoh6/TCrypto) - A simple encrypted key-value storage library.
* [VAddy](https://vaddy.net/) - A continuous security testing platform for web applications. * [VAddy](https://vaddy.net/) - A continuous security testing platform for web applications.
* [Zed](https://owasp.org/www-project-zap/) - An integrated penetration testing tool for web applications. * [Zap](https://owasp.org/www-project-zap/) - An integrated penetration testing tool for web applications.
### Passwords ### Passwords
*Libraries and tools for working with and storing passwords.* *Libraries and tools for working with and storing passwords.*
@ -376,8 +385,10 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
* [Better Reflection](https://github.com/Roave/BetterReflection) - AST-based reflection library that allows analysis and manipulation of code * [Better Reflection](https://github.com/Roave/BetterReflection) - AST-based reflection library that allows analysis and manipulation of code
* [Code Climate](https://codeclimate.com) - An automated code review. * [Code Climate](https://codeclimate.com) - An automated code review.
* [GrumPHP](https://github.com/phpro/grumphp) - A PHP code-quality tool.
* [PHP Parser](https://github.com/nikic/PHP-Parser) - A PHP parser written in PHP. * [PHP Parser](https://github.com/nikic/PHP-Parser) - A PHP parser written in PHP.
* [PHP Semantic Versioning Checker](https://github.com/tomzx/php-semver-checker) - A command line utility that compares two source sets and determines the appropriate semantic versioning to apply. * [PHP Semantic Versioning Checker](https://github.com/tomzx/php-semver-checker) - A command line utility that compares two source sets and determines the appropriate semantic versioning to apply.
* [Phpactor](https://github.com/phpactor/phpactor) - PHP completion, refactoring and introspection tool.
* [PHPLOC](https://github.com/sebastianbergmann/phploc) - A tool for quickly measuring the size of a PHP project. * [PHPLOC](https://github.com/sebastianbergmann/phploc) - A tool for quickly measuring the size of a PHP project.
* [PHPQA](https://github.com/EdgedesignCZ/phpqa) - A tool for running QA tools (phploc, phpcpd, phpcs, pdepend, phpmd, phpmetrics). * [PHPQA](https://github.com/EdgedesignCZ/phpqa) - A tool for running QA tools (phploc, phpcpd, phpcs, pdepend, phpmd, phpmetrics).
* [Qafoo Quality Analyzer](https://github.com/Qafoo/QualityAnalyzer) - A tool to visualize metrics and source code. * [Qafoo Quality Analyzer](https://github.com/Qafoo/QualityAnalyzer) - A tool to visualize metrics and source code.
@ -388,6 +399,7 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
### Code Quality ### Code Quality
*Libraries for managing code quality, formatting and linting.* *Libraries for managing code quality, formatting and linting.*
* [CaptainHook](https://github.com/captainhookphp/captainhook) - An easy-to-use and flexible Git hook library.
* [PHP CodeSniffer](https://github.com/squizlabs/PHP_CodeSniffer) - A library that detects PHP, CSS and JS coding standard violations. * [PHP CodeSniffer](https://github.com/squizlabs/PHP_CodeSniffer) - A library that detects PHP, CSS and JS coding standard violations.
* [PHP CS Fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer) - A coding standards fixer library. * [PHP CS Fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer) - A coding standards fixer library.
* [PHP Mess Detector](https://github.com/phpmd/phpmd) - A library that scans code for bugs, sub-optimal code, unused parameters and more. * [PHP Mess Detector](https://github.com/phpmd/phpmd) - A library that scans code for bugs, sub-optimal code, unused parameters and more.
@ -418,21 +430,26 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
* [Iter](https://github.com/nikic/iter) - A library that provides iteration primitives using generators. * [Iter](https://github.com/nikic/iter) - A library that provides iteration primitives using generators.
* [Patchwork](http://patchwork2.org/) - A library for redefining userland functions. * [Patchwork](http://patchwork2.org/) - A library for redefining userland functions.
* [Pipeline](https://github.com/thephpleague/pipeline) - A pipeline pattern implementation. * [Pipeline](https://github.com/thephpleague/pipeline) - A pipeline pattern implementation.
* [Porter](https://github.com/ScriptFUSION/Porter) - Data import abstraction library for consuming Web APIs and other data sources.
* [Ruler](https://github.com/bobthecow/Ruler) - A simple stateless production rules engine.
* [RulerZ](https://github.com/K-Phoen/rulerz) - A powerful rule engine and implementation of the Specification pattern. * [RulerZ](https://github.com/K-Phoen/rulerz) - A powerful rule engine and implementation of the Specification pattern.
### Debugging and Profiling ### Debugging and Profiling
*Libraries and tools for debugging and profiling code.* *Libraries and tools for debugging errors and profiling code.*
* [APM](https://pecl.php.net/package/APM) - Monitoring extension collecting errors and statistics into SQLite/MySQL/StatsD. * [APM](https://pecl.php.net/package/APM) - Monitoring extension collecting errors and statistics into SQLite/MySQL/StatsD.
* [Barbushin PHP Console](https://github.com/barbushin/php-console) - Another web debugging console using Google Chrome. * [Barbushin PHP Console](https://github.com/barbushin/php-console) - Another web debugging console using Google Chrome.
* [Blackfire.io](https://blackfire.io) - A low-overhead code profiler. * [Blackfire.io](https://blackfire.io) - A low-overhead code profiler.
* [Kint](https://github.com/kint-php/kint) - A debugging and profiling tool. * [Kint](https://github.com/kint-php/kint) - A debugging and profiling tool.
* [PCOV](https://github.com/krakjoe/pcov) - A self contained code coverage compatible driver.
* [PHP Console](https://github.com/Seldaek/php-console) - A web debugging console. * [PHP Console](https://github.com/Seldaek/php-console) - A web debugging console.
* [PHP Debug Bar](http://phpdebugbar.com/) - A debugging toolbar. * [PHP Debug Bar](http://phpdebugbar.com/) - A debugging toolbar.
* [PHPBench](https://github.com/phpbench/phpbench) - A benchmarking Framework. * [PHPBench](https://github.com/phpbench/phpbench) - A benchmarking Framework.
* [PHPSpy](https://github.com/adsr/phpspy) - A low-overhead sampling profiler. * [PHPSpy](https://github.com/adsr/phpspy) - A low-overhead sampling profiler.
* [Symfony VarDumper](https://github.com/symfony/var-dumper) - A variable dumper component.
* [Tideways.io](https://tideways.com/) - Monitoring and profiling tool. * [Tideways.io](https://tideways.com/) - Monitoring and profiling tool.
* [Tracy](https://github.com/nette/tracy) - A simple error detection, logging and time measuring library. * [Tracy](https://github.com/nette/tracy) - A simple error detection, logging and time measuring library.
* [Whoops](https://github.com/filp/whoops) - A pretty error handling library.
* [xDebug](https://github.com/xdebug/xdebug) - A debug and profile tool for PHP. * [xDebug](https://github.com/xdebug/xdebug) - A debug and profile tool for PHP.
* [XHProf](https://github.com/phacility/xhprof) - A profiling tool originally developed by Facebook. * [XHProf](https://github.com/phacility/xhprof) - A profiling tool originally developed by Facebook.
* [Z-Ray](https://www.zend.com/products/z-ray) - A debug and profile tool for Zend Server. * [Z-Ray](https://www.zend.com/products/z-ray) - A debug and profile tool for Zend Server.
@ -440,7 +457,7 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
### Build Tools ### Build Tools
*Project build and automation tools.* *Project build and automation tools.*
* [Box](https://github.com/humbug/box) - A utility to build PHAR files. * [Box](https://github.com/box-project/box) - A utility to build PHAR files.
* [Construct](https://github.com/jonathantorres/construct) - A PHP project/micro-package generator. * [Construct](https://github.com/jonathantorres/construct) - A PHP project/micro-package generator.
* [Phing](https://www.phing.info/) - A PHP project build system inspired by Apache Ant. * [Phing](https://www.phing.info/) - A PHP project build system inspired by Apache Ant.
@ -462,9 +479,9 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
*Tools for managing, compressing and minifying website assets.* *Tools for managing, compressing and minifying website assets.*
* [JShrink](https://github.com/tedious/JShrink) - A JavaScript minifier library. * [JShrink](https://github.com/tedious/JShrink) - A JavaScript minifier library.
* [Munee](https://github.com/meenie/munee) - An asset optimiser library. * [Laravel Mix](https://github.com/JeffreyWay/laravel-mix) - An elegant wrapper around Webpack for the 80% use case.
* [Puli](https://github.com/puli/repository) - A library for determining assets absolute paths. * [Symfony Asset](https://github.com/symfony/asset) - Manages URL generation and versioning of web assets.
* [BowerPHP](https://github.com/Bee-Lab/bowerphp) - A PHP implementation of Bower. A package manager for the web * [Symfony Encore](https://github.com/symfony/webpack-encore) - A simple but powerful API for processing and compiling assets built around Webpack.
### Geolocation ### Geolocation
*Libraries for geocoding addresses and working with latitudes and longitudes.* *Libraries for geocoding addresses and working with latitudes and longitudes.*
@ -487,7 +504,7 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
*Libraries that are event-driven or implement non-blocking event loops.* *Libraries that are event-driven or implement non-blocking event loops.*
* [Amp](https://github.com/amphp/amp) - An event driven non-blocking I/O library. * [Amp](https://github.com/amphp/amp) - An event driven non-blocking I/O library.
* [Broadway](https://github.com/broadway/broadway) - An event source and CQRS library. * [Broadway](https://github.com/broadway/broadway) - An event source and CQRS library.
* [Cake Event](https://github.com/cakephp/event) - An event dispatcher library (CP). * [CakePHP Event](https://github.com/cakephp/event) - An event dispatcher library.
* [Elephant.io](https://github.com/Wisembly/Elephant.io) - Yet another web socket library. * [Elephant.io](https://github.com/Wisembly/Elephant.io) - Yet another web socket library.
* [Evenement](https://github.com/igorw/evenement) - An event dispatcher library. * [Evenement](https://github.com/igorw/evenement) - An event dispatcher library.
* [Event](https://github.com/thephpleague/event) - An event library with a focus on domain events. * [Event](https://github.com/thephpleague/event) - An event library with a focus on domain events.
@ -496,7 +513,7 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
* [Prooph Event Store](https://github.com/prooph/event-store) - An event source component to persist event messages * [Prooph Event Store](https://github.com/prooph/event-store) - An event source component to persist event messages
* [PHP Defer](https://github.com/php-defer/php-defer) - Golang's defer statement for PHP. * [PHP Defer](https://github.com/php-defer/php-defer) - Golang's defer statement for PHP.
* [Ratchet](https://github.com/ratchetphp/Ratchet) - A web socket library. * [Ratchet](https://github.com/ratchetphp/Ratchet) - A web socket library.
* [React](https://github.com/reactphp/reactphp) - An event driven non-blocking I/O library. * [ReactPHP](https://github.com/reactphp/reactphp) - An event driven non-blocking I/O library.
* [RxPHP](https://github.com/ReactiveX/RxPHP) - A reactive extension library. * [RxPHP](https://github.com/ReactiveX/RxPHP) - A reactive extension library.
* [Swoole](https://github.com/swoole/swoole-src) - An event-driven asynchronous and concurrent networking communication framework with high performance for PHP written in C. * [Swoole](https://github.com/swoole/swoole-src) - An event-driven asynchronous and concurrent networking communication framework with high performance for PHP written in C.
* [Workerman](https://github.com/walkor/Workerman) - An event driven non-blocking I/O library. * [Workerman](https://github.com/walkor/Workerman) - An event driven non-blocking I/O library.
@ -510,6 +527,7 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
*Libraries and applications for taking payments and building online e-commerce stores.* *Libraries and applications for taking payments and building online e-commerce stores.*
* [Money](https://github.com/moneyphp/money) - A PHP implementation of Fowler's money pattern. * [Money](https://github.com/moneyphp/money) - A PHP implementation of Fowler's money pattern.
* [Brick\Money](https://github.com/brick/money) - A money library for PHP, with support for contexts, cash roundings, currency conversion.
* [OmniPay](https://github.com/thephpleague/omnipay) - A framework agnostic multi-gateway payment processing library. * [OmniPay](https://github.com/thephpleague/omnipay) - A framework agnostic multi-gateway payment processing library.
* [Payum](https://github.com/payum/payum) - A payment abstraction library. * [Payum](https://github.com/payum/payum) - A payment abstraction library.
* [Shopware](https://github.com/shopware/shopware) - Highly customizable e-commerce software * [Shopware](https://github.com/shopware/shopware) - Highly customizable e-commerce software
@ -539,11 +557,11 @@ Please see [CONTRIBUTING](https://github.com/ziadoz/awesome-php/blob/master/CONT
* [Aura.Sql](https://github.com/auraphp/Aura.Sql) - Provides an extension to the native PDO along with a profiler and connection locator. * [Aura.Sql](https://github.com/auraphp/Aura.Sql) - Provides an extension to the native PDO along with a profiler and connection locator.
* [Aura.SqlQuery](https://github.com/auraphp/Aura.SqlQuery) - Independent query builders for MySQL, PostgreSQL, SQLite, and Microsoft SQL Server. * [Aura.SqlQuery](https://github.com/auraphp/Aura.SqlQuery) - Independent query builders for MySQL, PostgreSQL, SQLite, and Microsoft SQL Server.
* [Baum](https://github.com/etrepat/baum) - A nested set implementation for Eloquent. * [Baum](https://github.com/etrepat/baum) - A nested set implementation for Eloquent.
* [Cake ORM](https://github.com/cakephp/orm) - Object-Relational Mapper, implemented using the DataMapper pattern (CP). * [CakePHP ORM](https://github.com/cakephp/orm) - Object-Relational Mapper, implemented using the DataMapper pattern.
* [Cycle ORM](https://github.com/cycle/orm) - PHP DataMapper, ORM. * [Cycle ORM](https://github.com/cycle/orm) - PHP DataMapper, ORM.
* [Doctrine Extensions](https://github.com/Atlantic18/DoctrineExtensions) - A collection of Doctrine behavioural extensions. * [Doctrine Extensions](https://github.com/Atlantic18/DoctrineExtensions) - A collection of Doctrine behavioural extensions.
* [Doctrine](https://www.doctrine-project.org/) - A comprehensive DBAL and ORM. * [Doctrine](https://www.doctrine-project.org/) - A comprehensive DBAL and ORM.
* [Eloquent](https://github.com/illuminate/database) - A simple ORM (L6). * [Laravel Eloquent](https://github.com/illuminate/database) - A simple ORM.
* [Pomm](https://github.com/chanmix51/Pomm) - An Object Model Manager for PostgreSQL. * [Pomm](https://github.com/chanmix51/Pomm) - An Object Model Manager for PostgreSQL.
* [ProxyManager](https://github.com/Ocramius/ProxyManager) - A set of utilities to generate proxy objects for data mappers. * [ProxyManager](https://github.com/Ocramius/ProxyManager) - A set of utilities to generate proxy objects for data mappers.
* [RedBean](https://redbeanphp.com/index.php) - A lightweight, configuration-less ORM. * [RedBean](https://redbeanphp.com/index.php) - A lightweight, configuration-less ORM.
@ -562,7 +580,7 @@ Libraries to help manage database schemas and migrations.
*Libraries for working with "NoSQL" backends.* *Libraries for working with "NoSQL" backends.*
* [PHPMongo](https://github.com/sokil/php-mongo) - A MongoDB ORM. * [PHPMongo](https://github.com/sokil/php-mongo) - A MongoDB ORM.
* [Predis](https://github.com/nrk/predis) - A feature complete Redis library. * [Predis](https://github.com/predis/predis) - A feature complete Redis library.
### Queue ### Queue
*Libraries for working with event and task queues.* *Libraries for working with event and task queues.*
@ -573,6 +591,7 @@ Libraries to help manage database schemas and migrations.
* [PHP AMQP](https://github.com/php-amqplib/php-amqplib) - A pure PHP AMQP library. * [PHP AMQP](https://github.com/php-amqplib/php-amqplib) - A pure PHP AMQP library.
* [Tarantool Queue](https://github.com/tarantool-php/queue) - PHP bindings for Tarantool Queue. * [Tarantool Queue](https://github.com/tarantool-php/queue) - PHP bindings for Tarantool Queue.
* [Thumper](https://github.com/php-amqplib/Thumper) - A RabbitMQ pattern library. * [Thumper](https://github.com/php-amqplib/Thumper) - A RabbitMQ pattern library.
* [Enqueue](https://github.com/php-enqueue/enqueue-dev) - A message queue packages for PHP that supports RabbitMQ, AMQP, STOMP, Amazon SQS, Redis and Doctrine transports.
### Search ### Search
*Libraries and software for indexing and performing search queries on data.* *Libraries and software for indexing and performing search queries on data.*
@ -580,8 +599,7 @@ Libraries to help manage database schemas and migrations.
* [Elastica](https://github.com/ruflin/Elastica) - A client library for ElasticSearch. * [Elastica](https://github.com/ruflin/Elastica) - A client library for ElasticSearch.
* [ElasticSearch PHP](https://github.com/elastic/elasticsearch-php) - The official client library for [ElasticSearch](https://www.elastic.co/). * [ElasticSearch PHP](https://github.com/elastic/elasticsearch-php) - The official client library for [ElasticSearch](https://www.elastic.co/).
* [Solarium](https://www.solarium-project.org/) - A client library for [Solr](https://lucene.apache.org/solr/). * [Solarium](https://www.solarium-project.org/) - A client library for [Solr](https://lucene.apache.org/solr/).
* [Sphinx Search](https://github.com/ripaclub/sphinxsearch) - Sphinx Search library provides SphinxQL indexing and searching features * [SphinxQL Query Builder](https://foolcode.github.io/SphinxQL-Query-Builder/) - A query library for the [Sphinx](https://sphinxsearch.com/) and [Manticore](https://manticoresearch.com/) search engines.
* [SphinxQL query builder](https://foolcode.github.io/SphinxQL-Query-Builder/) - A query library for the [Sphinx](https://sphinxsearch.com/) search engine.
### Command Line ### Command Line
*Libraries related to the command line.* *Libraries related to the command line.*
@ -642,7 +660,7 @@ Libraries to help manage database schemas and migrations.
* [Portable UTF-8](https://github.com/voku/portable-utf8) - A string manipulation library with UTF-8 safe replacement methods. * [Portable UTF-8](https://github.com/voku/portable-utf8) - A string manipulation library with UTF-8 safe replacement methods.
* [Slugify](https://github.com/cocur/slugify) - A library to convert strings to slugs. * [Slugify](https://github.com/cocur/slugify) - A library to convert strings to slugs.
* [SQL Formatter](https://github.com/jdorn/sql-formatter/) - A library for formatting SQL statements. * [SQL Formatter](https://github.com/jdorn/sql-formatter/) - A library for formatting SQL statements.
* [Stringy](https://github.com/danielstjules/Stringy) - A string manipulation library with multibyte support. * [Stringy](https://github.com/voku/Stringy) - A string manipulation library with multibyte support.
* [UA Parser](https://github.com/tobie/ua-parser/tree/master/php) - A library for parsing user agent strings. * [UA Parser](https://github.com/tobie/ua-parser/tree/master/php) - A library for parsing user agent strings.
* [URLify](https://github.com/jbroadway/urlify) - A PHP port of Django's URLify.js. * [URLify](https://github.com/jbroadway/urlify) - A PHP port of Django's URLify.js.
* [UUID](https://github.com/ramsey/uuid) - A library for generating UUIDs. * [UUID](https://github.com/ramsey/uuid) - A library for generating UUIDs.
@ -650,17 +668,20 @@ Libraries to help manage database schemas and migrations.
### Numbers ### Numbers
*Libraries for working with numbers.* *Libraries for working with numbers.*
* [Brick\Math](https://github.com/brick/math) - A library providing large number support: `BigInteger`, `BigDecimal` and `BigRational`.
* [ByteUnits](https://github.com/gabrielelana/byte-units) - A library to parse, format and convert byte units in binary and metric systems. * [ByteUnits](https://github.com/gabrielelana/byte-units) - A library to parse, format and convert byte units in binary and metric systems.
* [DecimalObject](https://github.com/spryker/decimal-object) - A value object to handle decimals/floats easily and more precisely.
* [LibPhoneNumber for PHP](https://github.com/giggsey/libphonenumber-for-php) - A PHP implementation of Google's phone number handling library. * [LibPhoneNumber for PHP](https://github.com/giggsey/libphonenumber-for-php) - A PHP implementation of Google's phone number handling library.
* [PHP Conversion](https://github.com/Crisu83/php-conversion) - Another library for converting between units of measure. * [PHP Conversion](https://github.com/Crisu83/php-conversion) - Another library for converting between units of measure.
* [PHP Units of Measure](https://github.com/triplepoint/php-units-of-measure) - A library for converting between units of measure. * [PHP Units of Measure](https://github.com/triplepoint/php-units-of-measure) - A library for converting between units of measure.
* [MathPHP](https://github.com/markrogoyski/math-php) - A math library for PHP.
### Filtering and Validation ### Filtering and Validation
*Libraries for filtering and validating data.* *Libraries for filtering and validating data.*
* [Assert](https://github.com/beberlei/assert) - A validation library with a rich set of assertions. Supports assertion chaining and lazy assertions. * [Assert](https://github.com/beberlei/assert) - A validation library with a rich set of assertions. Supports assertion chaining and lazy assertions.
* [Aura.Filter](https://github.com/auraphp/Aura.Filter) - Provides tools to validate and sanitize objects and arrays. * [Aura.Filter](https://github.com/auraphp/Aura.Filter) - Provides tools to validate and sanitize objects and arrays.
* [Cake Validation](https://github.com/cakephp/validation) - Another validation library (CP). * [CakePHP Validation](https://github.com/cakephp/validation) - Another validation library.
* [Filterus](https://github.com/ircmaxell/filterus) - A simple PHP filtering library. * [Filterus](https://github.com/ircmaxell/filterus) - A simple PHP filtering library.
* [ISO-codes](https://github.com/ronanguilloux/IsoCodes) - A library for validating inputs according standards from ISO, International Finance, Public Administrations, GS1, Book Industry, Phone numbers & Zipcodes for many countries. * [ISO-codes](https://github.com/ronanguilloux/IsoCodes) - A library for validating inputs according standards from ISO, International Finance, Public Administrations, GS1, Book Industry, Phone numbers & Zipcodes for many countries.
* [JSON Schema](https://github.com/justinrainbow/json-schema) - A [JSON Schema](https://json-schema.org/) validation library. * [JSON Schema](https://github.com/justinrainbow/json-schema) - A [JSON Schema](https://json-schema.org/) validation library.
@ -674,7 +695,7 @@ Libraries to help manage database schemas and migrations.
*Libraries and web tools for developing APIs.* *Libraries and web tools for developing APIs.*
* [API Platform](https://api-platform.com ) - Expose in minutes an hypermedia REST API that embraces JSON-LD, Hydra format. * [API Platform](https://api-platform.com ) - Expose in minutes an hypermedia REST API that embraces JSON-LD, Hydra format.
* [Apigility](https://github.com/zfcampus/zf-apigility-skeleton) - An API builder built with Zend Framework 2. * [Laminas API Tool Skeleton](https://github.com/laminas-api-tools/api-tools-skeleton) - An API builder built with the Laminas Framework.
* [Drest](https://github.com/leedavis81/drest) - A library for exposing Doctrine entities as REST resource endpoints. * [Drest](https://github.com/leedavis81/drest) - A library for exposing Doctrine entities as REST resource endpoints.
* [HAL](https://github.com/blongden/hal) - A Hypertext Application Language (HAL) builder library. * [HAL](https://github.com/blongden/hal) - A Hypertext Application Language (HAL) builder library.
* [Hateoas](https://github.com/willdurand/Hateoas) - A HATEOAS REST web service library. * [Hateoas](https://github.com/willdurand/Hateoas) - A HATEOAS REST web service library.
@ -685,19 +706,18 @@ Libraries to help manage database schemas and migrations.
### Caching ### Caching
*Libraries for caching data.* *Libraries for caching data.*
* [Alternative PHP Cache (APC)](https://www.php.net/manual/en/book.apc.php) - Open opcode cache for PHP.
* [APIx Cache](https://github.com/apix/cache) - A thin PSR-6 cache wrapper to various caching backends emphasising cache tagging and indexing. * [APIx Cache](https://github.com/apix/cache) - A thin PSR-6 cache wrapper to various caching backends emphasising cache tagging and indexing.
* [CacheTool](https://github.com/gordalina/cachetool) - A tool to clear APC/opcode caches from the command line. * [CacheTool](https://github.com/gordalina/cachetool) - A tool to clear APC/opcode caches from the command line.
* [Cake Cache](https://github.com/cakephp/cache) - A caching library (CP). * [CakePHP Cache](https://github.com/cakephp/cache) - A caching library.
* [Doctrine Cache](https://github.com/doctrine/cache) - A caching library. * [Doctrine Cache](https://github.com/doctrine/cache) - A caching library.
* [Metaphore](https://github.com/sobstel/metaphore) - Cache slam defense using a semaphore to prevent dogpile effect. * [Metaphore](https://github.com/sobstel/metaphore) - Cache slam defense using a semaphore to prevent dogpile effect.
* [Stash](https://github.com/tedious/Stash) - Another library for caching. * [Stash](https://github.com/tedious/Stash) - Another library for caching.
* [Zend Cache](https://github.com/zendframework/zend-cache) - Another caching library (ZF2). * [Laminas Cache](https://github.com/laminas/laminas-cache) - Another caching library.
### Data Structure and Storage ### Data Structure and Storage
*Libraries that implement data structure or storage techniques.* *Libraries that implement data structure or storage techniques.*
* [Cake Collection](https://github.com/cakephp/collection) - A simple collections library (CP). * [CakePHP Collection](https://github.com/cakephp/collection) - A simple collections library.
* [Fractal](https://github.com/thephpleague/fractal) - A library for converting complex data structures to JSON output. * [Fractal](https://github.com/thephpleague/fractal) - A library for converting complex data structures to JSON output.
* [Ginq](https://github.com/akanehara/ginq) - Another PHP library based on .NET's LINQ. * [Ginq](https://github.com/akanehara/ginq) - Another PHP library based on .NET's LINQ.
* [JsonMapper](https://github.com/cweiske/jsonmapper) - A library that maps nested JSON structures onto PHP classes. * [JsonMapper](https://github.com/cweiske/jsonmapper) - A library that maps nested JSON structures onto PHP classes.
@ -705,10 +725,9 @@ Libraries to help manage database schemas and migrations.
* [Knapsack](https://github.com/DusanKasan/Knapsack) - Collection library inspired by Clojure's sequences. * [Knapsack](https://github.com/DusanKasan/Knapsack) - Collection library inspired by Clojure's sequences.
* [msgpack.php](https://github.com/rybakit/msgpack.php) - A pure PHP implementation of the [MessagePack](https://msgpack.org/) serialization format. * [msgpack.php](https://github.com/rybakit/msgpack.php) - A pure PHP implementation of the [MessagePack](https://msgpack.org/) serialization format.
* [PINQ](https://github.com/TimeToogo/Pinq) - A PHP library based on .NET's LINQ (Language Integrated Query). * [PINQ](https://github.com/TimeToogo/Pinq) - A PHP library based on .NET's LINQ (Language Integrated Query).
* [Porter](https://github.com/ScriptFUSION/Porter) - Data import abstraction framework.
* [Serializer](https://github.com/schmittjoh/serializer) - A library for serialising and de-serialising data. * [Serializer](https://github.com/schmittjoh/serializer) - A library for serialising and de-serialising data.
* [YaLinqo](https://github.com/Athari/YaLinqo) - Yet Another LINQ to Objects for PHP. * [YaLinqo](https://github.com/Athari/YaLinqo) - Yet Another LINQ to Objects for PHP.
* [Zend Serializer](https://github.com/zendframework/zend-serializer) - Another library for serialising and de-serialising data (ZF2). * [Laminas Serializer](https://github.com/laminas/laminas-serializer) - Another library for serialising and de-serialising data.
### Notifications ### Notifications
*Libraries for working with notification software.* *Libraries for working with notification software.*
@ -730,14 +749,14 @@ Libraries to help manage database schemas and migrations.
*Libraries for Internationalization (I18n) and Localization (L10n).* *Libraries for Internationalization (I18n) and Localization (L10n).*
* [Aura.Intl](https://github.com/auraphp/Aura.Intl) - Provides internationalization (I18N) tools, specifically package-oriented per-locale message translation. * [Aura.Intl](https://github.com/auraphp/Aura.Intl) - Provides internationalization (I18N) tools, specifically package-oriented per-locale message translation.
* [Cake I18n](https://github.com/cakephp/i18n) - Message translation and localization for dates and numbers (CP) * [CakePHP I18n](https://github.com/cakephp/i18n) - Message translation and localization for dates and numbers.
### Serverless ### Serverless
*Libraries and tools to help build serverless web applications.* *Libraries and tools to help build serverless web applications.*
* [Bref](https://bref.sh/) - Serverless PHP on AWS Lambda. * [Bref](https://bref.sh/) - Serverless PHP on AWS Lambda.
* [OpenWhisk](http://openwhisk.apache.org/) - An open source serverless cloud platform. * [OpenWhisk](http://openwhisk.apache.org/) - An open-source serverless cloud platform.
* [Serverless Framework](https://serverless.com/cli/) - An open source framework for building serverless applications. * [Serverless Framework](https://www.serverless.com/open-source/) - An open-source framework for building serverless applications.
* [Laravel Vapor](https://vapor.laravel.com/) - A serverless deployment platform for Laravel, powered by AWS. * [Laravel Vapor](https://vapor.laravel.com/) - A serverless deployment platform for Laravel, powered by AWS.
## Configuration ## Configuration
@ -745,13 +764,14 @@ Libraries to help manage database schemas and migrations.
* [PHP Dotenv](https://github.com/vlucas/phpdotenv) - Parse and load environment variables from `.env` files. * [PHP Dotenv](https://github.com/vlucas/phpdotenv) - Parse and load environment variables from `.env` files.
* [Symfony Dotenv](https://github.com/symfony/dotenv)- Parse and load environment variables from `.env` files. * [Symfony Dotenv](https://github.com/symfony/dotenv)- Parse and load environment variables from `.env` files.
* [Yo! Symfony TOML](https://github.com/yosymfony/toml) - A PHP parser for [TOML](https://github.com/toml-lang/toml).
### Third Party APIs ### Third Party APIs
*Libraries for accessing third party APIs.* *Libraries for accessing third party APIs.*
* [Amazon Web Service SDK](https://github.com/aws/aws-sdk-php) - The official PHP AWS SDK library. * [Amazon Web Service SDK](https://github.com/aws/aws-sdk-php) - The official PHP AWS SDK library.
* [AsyncAWS](https://async-aws.com/) - An unofficial asynchronous PHP AWS SDK.
* [Campaign Monitor](https://campaignmonitor.github.io/createsend-php/) - The official Campaign Monitor PHP library. * [Campaign Monitor](https://campaignmonitor.github.io/createsend-php/) - The official Campaign Monitor PHP library.
* [Dropbox SDK](https://github.com/dropbox/dropbox-sdk-php) - The official PHP Dropbox SDK library.
* [Github](https://github.com/KnpLabs/php-github-api) - A library to interface with the Github API. * [Github](https://github.com/KnpLabs/php-github-api) - A library to interface with the Github API.
* [Mailgun](https://github.com/mailgun/mailgun-php) The official Mailgun PHP API. * [Mailgun](https://github.com/mailgun/mailgun-php) The official Mailgun PHP API.
* [Square](https://github.com/square/connect-php-sdk) - The official Square PHP SDK for payments and other Square APIs. * [Square](https://github.com/square/connect-php-sdk) - The official Square PHP SDK for payments and other Square APIs.
@ -769,12 +789,13 @@ Libraries to help manage database schemas and migrations.
* [Annotations](https://github.com/doctrine/annotations) - An annotations library (part of Doctrine). * [Annotations](https://github.com/doctrine/annotations) - An annotations library (part of Doctrine).
* [BotMan](https://github.com/botman/botman) - A framework agnostic PHP library to build cross-platform chat bots. * [BotMan](https://github.com/botman/botman) - A framework agnostic PHP library to build cross-platform chat bots.
* [Cake Utility](https://github.com/cakephp/utility) - Utility classes such as Inflector, String, Hash, Security and Xml (CP). * [CakePHP Utility](https://github.com/cakephp/utility) - Utility classes such as Inflector, String, Hash, Security and XML.
* [Chief](https://github.com/adamnicholson/Chief) - A command bus library. * [Chief](https://github.com/adamnicholson/Chief) - A command bus library.
* [ClassPreloader](https://github.com/ClassPreloader/ClassPreloader) - A library for optimising autoloading. * [ClassPreloader](https://github.com/ClassPreloader/ClassPreloader) - A library for optimising autoloading.
* [Country List](https://github.com/umpirsky/country-list) - A list of all countries with names and ISO 3166-1 codes. * [Country List](https://github.com/umpirsky/country-list) - A list of all countries with names and ISO 3166-1 codes.
* [Embera](https://github.com/mpratt/Embera) - An Oembed consumer library. * [Embera](https://github.com/mpratt/Embera) - An Oembed consumer library.
* [Essence](https://github.com/essence/essence) - A library for extracting web media. * [Essence](https://github.com/essence/essence) - A library for extracting web media.
* [Expose](https://github.com/beyondcode/expose) - An open source PHP tunneling service.
* [Graphviz](https://github.com/alexandresalome/graphviz) - A Graphviz library. * [Graphviz](https://github.com/alexandresalome/graphviz) - A Graphviz library.
* [Hprose-PHP](https://github.com/hprose/hprose-php) - A very newbility RPC Library, support 25+ languages now. * [Hprose-PHP](https://github.com/hprose/hprose-php) - A very newbility RPC Library, support 25+ languages now.
* [JSON Lint](https://github.com/Seldaek/jsonlint) - A JSON lint utility. * [JSON Lint](https://github.com/Seldaek/jsonlint) - A JSON lint utility.
@ -785,7 +806,7 @@ Libraries to help manage database schemas and migrations.
* [Nmap](https://github.com/willdurand/nmap) - A PHP wrapper around [Nmap](https://nmap.org/). * [Nmap](https://github.com/willdurand/nmap) - A PHP wrapper around [Nmap](https://nmap.org/).
* [Pagerfanta](https://github.com/whiteoctober/Pagerfanta) - A pagination library. * [Pagerfanta](https://github.com/whiteoctober/Pagerfanta) - A pagination library.
* [PHP PassBook](https://github.com/eymengunay/php-passbook) - A PHP library for iOS PassBook. * [PHP PassBook](https://github.com/eymengunay/php-passbook) - A PHP library for iOS PassBook.
* [PHP-ML](https://github.com/php-ai/php-ml) - A library for Machine Learning in PHP. * [PHP-ML](https://github.com/jorgecasas/php-ml) - A library for Machine Learning in PHP.
* [PHPCR](https://github.com/phpcr/phpcr) - A PHP port of the Java Content Repository (JCR). * [PHPCR](https://github.com/phpcr/phpcr) - A PHP port of the Java Content Repository (JCR).
* [PHPStack](http://dunkels.com/adam/phpstack/) - A TCP/IP stack proof of concept written in PHP. * [PHPStack](http://dunkels.com/adam/phpstack/) - A TCP/IP stack proof of concept written in PHP.
* [print_o](https://github.com/koriym/print_o) - An object graph visualizer. * [print_o](https://github.com/koriym/print_o) - An object graph visualizer.
@ -797,9 +818,7 @@ Libraries to help manage database schemas and migrations.
* [Slimdump](https://github.com/webfactory/slimdump) - An easy dumper tool for MySQL. * [Slimdump](https://github.com/webfactory/slimdump) - An easy dumper tool for MySQL.
* [Spork](https://github.com/kriswallsmith/spork) - A process forking library. * [Spork](https://github.com/kriswallsmith/spork) - A process forking library.
* [SuperClosure](https://github.com/jeremeamia/super_closure) - A library that allows Closures to be serialized. * [SuperClosure](https://github.com/jeremeamia/super_closure) - A library that allows Closures to be serialized.
* [Symfony VarDumper](https://github.com/symfony/var-dumper) - A variable dumper component (SF).
* [Underscore](https://anahkiasen.github.io/underscore-php/) - A PHP port of the Underscore JS library. * [Underscore](https://anahkiasen.github.io/underscore-php/) - A PHP port of the Underscore JS library.
* [Whoops](https://github.com/filp/whoops) - A pretty error handling library.
# Software # Software
*Software for creating a development environment.* *Software for creating a development environment.*
@ -807,37 +826,36 @@ Libraries to help manage database schemas and migrations.
### PHP Installation ### PHP Installation
*Tools to help install and manage PHP on your computer.* *Tools to help install and manage PHP on your computer.*
* [HomeBrew](https://brew.sh/) - A package manager for OSX.
* [Brew PHP Switcher](https://github.com/philcook/brew-php-switcher) - Brew PHP switcher. * [Brew PHP Switcher](https://github.com/philcook/brew-php-switcher) - Brew PHP switcher.
* [HomeBrew](https://brew.sh/) - A package manager for OSX.
* [Laravel Valet](https://laravel.com/docs/master/valet) - A development environment for macOS.
* [PHP Brew](https://github.com/phpbrew/phpbrew) - A PHP version manager and installer. * [PHP Brew](https://github.com/phpbrew/phpbrew) - A PHP version manager and installer.
* [PHP Build](https://github.com/php-build/php-build) - Another PHP version installer. * [PHP Build](https://github.com/php-build/php-build) - Another PHP version installer.
* [PHP OSX](https://php-osx.liip.ch/) - A PHP installer for OSX. * [PHP OSX](https://php-osx.liip.ch/) - A PHP installer for OSX.
* [VirtPHP](http://virtphp.org/) - A tool for creating and managing isolated PHP environments.
### Development Environment ### Development Environment
*Software and tools for creating a sandboxed development environment.* *Software and tools for creating a sandboxed development environment.*
* [Ansible](https://www.ansible.com/) - A radically simple orchestration framework. * [Ansible](https://www.ansible.com/) - A radically simple orchestration framework.
* [Phansible](https://phansible.com/) - A web tool for building PHP development virtual machines with Ansible. * [Docker](https://www.docker.com/) - A containerization platform.
* [Protobox](https://www.getprotobox.com/) - Another web tool for building PHP development virtual machines. * [Laravel Homestead](https://laravel.com/docs/master/homestead) - A local development environment for Laravel.
* [PuPHPet](https://puphpet.com/) - A web tool for building PHP development virtual machines. * [Laradock](http://laradock.io/) - A full PHP development environment based on Docker.
* [Puppet](https://puppet.com/) - A server automation framework and application. * [Puppet](https://puppet.com/) - A server automation framework and application.
* [Vagrant](https://www.vagrantup.com/) - A portable development environment utility. * [Vagrant](https://www.vagrantup.com/) - A portable development environment utility.
* [Docker](https://www.docker.com/) - A containerization platform. * [Vessel](https://vessel.shippingdocker.com/) - Simple Docker development environments for Laravel.
### Virtual Machines ### Virtual Machines
*Alternative PHP virtual machines.* *Alternative PHP virtual machines.*
* [Hack](https://hacklang.org/) - A programming language for HHVM. * [Hack](https://hacklang.org/) - A programming language for HHVM.
* [HHVM](https://github.com/facebook/hhvm) - A Virtual Machine, Runtime and JIT for PHP by Facebook. * [HHVM](https://github.com/facebook/hhvm) - A Virtual Machine, Runtime and JIT for PHP by Facebook.
* [PeachPie](https://github.com/peachpiecompiler/peachpie) - PHP compiler and runtime for .NET and .NET Core.
### Text Editors and IDEs ### Text Editors and IDEs
*Text Editors and Integrated Development Environments (IDE) with support for PHP.* *Text Editors and Integrated Development Environments (IDE) with support for PHP.*
* [Atom](https://atom.io/) - A hackable text editor.
* [Atom IDE](https://ide.atom.io/) - An IDE extension for Atom.
* [Eclipse for PHP Developers](https://www.eclipse.org/downloads/) - A PHP IDE based on the Eclipse platform. * [Eclipse for PHP Developers](https://www.eclipse.org/downloads/) - A PHP IDE based on the Eclipse platform.
* [Netbeans](https://netbeans.org) - An IDE with support for PHP and HTML5. * [Apache NetBeans](https://netbeans.apache.org/) - An IDE with support for PHP and HTML5.
* [PhpStorm](https://www.jetbrains.com/phpstorm/) - A commercial PHP IDE. * [PhpStorm](https://www.jetbrains.com/phpstorm/) - A commercial PHP IDE.
* [VS Code](https://code.visualstudio.com/) - An open source code editor. * [VS Code](https://code.visualstudio.com/) - An open source code editor.
@ -845,7 +863,7 @@ Libraries to help manage database schemas and migrations.
*Web-based applications and tools.* *Web-based applications and tools.*
* [3V4L](https://3v4l.org/) - An online PHP & HHVM shell. * [3V4L](https://3v4l.org/) - An online PHP & HHVM shell.
* [DBV](https://dbv.vizuina.com/) - A database version control application. * [DBV](https://github.com/victorstanciu/dbv) - A database version control application.
* [PHP Queue](https://github.com/CoderKungfu/php-queue) - An application for managing queueing backends. * [PHP Queue](https://github.com/CoderKungfu/php-queue) - An application for managing queueing backends.
* [MailCatcher](https://github.com/sj26/mailcatcher) - A web tool for capturing and viewing emails. * [MailCatcher](https://github.com/sj26/mailcatcher) - A web tool for capturing and viewing emails.
* [Cachet](https://github.com/cachethq/cachet) - The open source status page system. * [Cachet](https://github.com/cachethq/cachet) - The open source status page system.
@ -869,6 +887,8 @@ Various resources, such as books, websites and articles, for improving your PHP
* [libs.garden: PHP](https://libs.garden/php) - An overview of fastest growing PHP libraries. * [libs.garden: PHP](https://libs.garden/php) - An overview of fastest growing PHP libraries.
* [Nomad PHP](https://nomadphp.com/) - A online PHP learning resource. * [Nomad PHP](https://nomadphp.com/) - A online PHP learning resource.
* [Laravel News](https://laravel-news.com/) - The official Laravel blog.
* [PHP Annotated Monthly](https://blog.jetbrains.com/phpstorm/category/php-annotated-monthly/) - A monthly digest of PHP news.
* [PHP Best Practices](https://phpbestpractices.org/) - A PHP best practice guide. * [PHP Best Practices](https://phpbestpractices.org/) - A PHP best practice guide.
* [PHP FIG](https://www.php-fig.org/) - The PHP Framework Interoperability Group. * [PHP FIG](https://www.php-fig.org/) - The PHP Framework Interoperability Group.
* [PHP Package Development Standards](http://php-pds.com) - Package development standards for PHP. * [PHP Package Development Standards](http://php-pds.com) - Package development standards for PHP.
@ -877,27 +897,19 @@ Various resources, such as books, websites and articles, for improving your PHP
* [PHP The Right Way](https://phptherightway.com/) - A PHP best practice quick reference guide. * [PHP The Right Way](https://phptherightway.com/) - A PHP best practice quick reference guide.
* [PHP UG](https://php.ug) - A website to help people locate their nearest PHP user group (UG). * [PHP UG](https://php.ug) - A website to help people locate their nearest PHP user group (UG).
* [PHP Versions](http://phpversions.info/) - Lists which versions of PHP are available on several popular web hosts. * [PHP Versions](http://phpversions.info/) - Lists which versions of PHP are available on several popular web hosts.
* [PHP Watch](https://php.watch/) - PHP articles, news, upcoming changes, RFCs and more.
* [PHP Weekly](http://www.phpweekly.com/archive.html) - A weekly PHP newsletter. * [PHP Weekly](http://www.phpweekly.com/archive.html) - A weekly PHP newsletter.
* [Securing PHP](https://www.securingphp.com/) - A newsletter about PHP security and library recommendations. * [Securing PHP](https://www.securingphp.com/) - A newsletter about PHP security and library recommendations.
* [Seven PHP](https://7php.com/) - A website that interviews members of the PHP community. * [Seven PHP](https://7php.com/) - A website that interviews members of the PHP community.
* [PHP Annotated Monthly](https://blog.jetbrains.com/phpstorm/category/php-annotated-monthly/) - A monthly digest of PHP news.
### Other Websites
*Useful websites related to web development.*
* [Atlassian Git Tutorials](https://www.atlassian.com/git) - A series of Git tutorials.
* [Learning Linux](https://linuxjourney.com/) - A website for learning Linux.
* [Semantic Versioning](https://semver.org/) - A website explaining semantic versioning.
* [Servers for Hackers](https://serversforhackers.com/) - A newsletter about server management.
* [The Open Web Application Security Project (OWASP)](https://owasp.org/) - An open software security community.
### PHP Books ### PHP Books
*Fantastic PHP-related books.* *Fantastic PHP-related books.*
* [Domain-Driven Design in PHP](https://leanpub.com/ddd-in-php) - Real examples written in PHP showcasing DDD Architectural Styles.
* [Functional Programming in PHP](https://www.functionalphp.com/) - This book will show you how to leverage these new PHP5.3+ features by understanding functional programming principles * [Functional Programming in PHP](https://www.functionalphp.com/) - This book will show you how to leverage these new PHP5.3+ features by understanding functional programming principles
* [Grumpy PHPUnit](https://leanpub.com/grumpy-phpunit) - A book about unit testing with PHPUnit by Chris Hartjes. * [Grumpy PHPUnit](https://leanpub.com/grumpy-phpunit) - A book about unit testing with PHPUnit by Chris Hartjes.
* [Mastering Object-Orientated PHP](https://www.brandonsavage.net/) - A book about object-orientated PHP by Brandon Savage. * [Mastering Object-Orientated PHP](https://www.brandonsavage.net/) - A book about object-orientated PHP by Brandon Savage.
* [Modern PHP New Features and Good Practices](http://shop.oreilly.com/product/0636920033868.do) - A book about new PHP features and best practices by Josh Lockhart. * [Modern PHP New Features and Good Practices](https://www.oreilly.com/library/view/~/9781491905173/) - A book about new PHP features and best practices by Josh Lockhart.
* [Modernizing Legacy Applications in PHP](https://leanpub.com/mlaphp) - A book about modernizing legacy PHP applications by Paul M. Jones. * [Modernizing Legacy Applications in PHP](https://leanpub.com/mlaphp) - A book about modernizing legacy PHP applications by Paul M. Jones.
* [PHP 7 Upgrade Guide](https://leanpub.com/php7) - An ebook covering all of the features and changes in PHP 7 by Colin O'Dell. * [PHP 7 Upgrade Guide](https://leanpub.com/php7) - An ebook covering all of the features and changes in PHP 7 by Colin O'Dell.
* [PHP Pandas](https://daylerees.com/php-pandas/) - A book about learning to write PHP by Dayle Rees. * [PHP Pandas](https://daylerees.com/php-pandas/) - A book about learning to write PHP by Dayle Rees.
@ -906,19 +918,6 @@ Various resources, such as books, websites and articles, for improving your PHP
* [Signaling PHP](https://leanpub.com/signalingphp) - A book about catching PCNTL signals in CLI scripts by Cal Evans. * [Signaling PHP](https://leanpub.com/signalingphp) - A book about catching PCNTL signals in CLI scripts by Cal Evans.
* [The Grumpy Programmer's Guide to Building Testable PHP Applications](https://leanpub.com/grumpy-testing) - A book about building testing PHP applications by Chris Hartjes. * [The Grumpy Programmer's Guide to Building Testable PHP Applications](https://leanpub.com/grumpy-testing) - A book about building testing PHP applications by Chris Hartjes.
* [XML Parsing with PHP](https://www.phparch.com/books/xml-parsing-with-php/) - This book covers parsing and validating XML documents, leveraging XPath expressions, and working with namespaces as well as how to create and modify XML files programmatically. * [XML Parsing with PHP](https://www.phparch.com/books/xml-parsing-with-php/) - This book covers parsing and validating XML documents, leveraging XPath expressions, and working with namespaces as well as how to create and modify XML files programmatically.
* [Domain-Driven Design in PHP](https://leanpub.com/ddd-in-php) - Real examples written in PHP showcasing DDD Architectural Styles.
### Other Books
*Books related to general computing and web development.*
* [Elasticsearch: The Definitive Guide](https://www.elastic.co/guide/index.html) - A guide to working with Elasticsearch by Clinton Gormley and Zachary Tong.
* [Eloquent JavaScript](https://eloquentjavascript.net/) - A book about JavaScript programming by Marijn Haverbeke.
* [Head First Design Patterns](https://www.oreilly.com/library/view/head-first-design/0596007124/) - A book that expains software design patterns.
* [Pro Git](https://git-scm.com/book/en/v2) - A book about Git by Scott Chacon and Ben Straub.
* [The Linux Command Line](http://linuxcommand.org/tlcl.php) - A book about the Linux command line by William Shotts.
* [The Tangled Web — Securing Web Applications](https://www.amazon.com/Tangled-Web-Securing-Modern-Applications/dp/1593273886) - A book about securing web applications by Michal Zalewski.
* [Understanding Computation](https://computationbook.com) - A book about computation theory by Tom Stuart.
* [Vagrant Cookbook](https://leanpub.com/vagrantcookbook) - A book about creating Vagrant environments by Erika Heidi.
### PHP Videos ### PHP Videos
*Fantastic PHP-related videos.* *Fantastic PHP-related videos.*
@ -927,15 +926,29 @@ Various resources, such as books, websites and articles, for improving your PHP
* [PHP UK Conference](https://www.youtube.com/user/phpukconference/videos) - A collection of videos from the PHP UK Conference. * [PHP UK Conference](https://www.youtube.com/user/phpukconference/videos) - A collection of videos from the PHP UK Conference.
* [Programming with Anthony](https://www.youtube.com/playlist?list=PLM-218uGSX3DQ3KsB5NJnuOqPqc5CW2kW) - A video series by Anthony Ferrara. * [Programming with Anthony](https://www.youtube.com/playlist?list=PLM-218uGSX3DQ3KsB5NJnuOqPqc5CW2kW) - A video series by Anthony Ferrara.
* [Taking PHP Seriously](https://www.infoq.com/presentations/php-history/) - A talk outlining PHP's strengths by Keith Adams of Facebook. * [Taking PHP Seriously](https://www.infoq.com/presentations/php-history/) - A talk outlining PHP's strengths by Keith Adams of Facebook.
* [Laracasts](https://laracasts.com) - Screencasts about Laravel, Vue JS and more.
* [Laravel YouTube Channel](https://www.youtube.com/channel/UCfO2GiQwb-cwJTb1CuRSkwg) - The official Laravel YouTube channel.
* [SymfonyCasts](https://symfonycasts.com/) - Screencasts and tutorials about PHP and Symfony.
### PHP Podcasts ### PHP Podcasts
*Podcasts with a focus on PHP topics.* *Podcasts with a focus on PHP topics.*
* [PHP Internals New](https://phpinternals.news) - A podcast about PHP internals. * [Laravel Podcast](https://laravelpodcast.com/) - Laravel and PHP development news and discussion.
* [PHP Internals News](https://phpinternals.news) - A podcast about PHP internals.
* [PHP Roundtable](https://www.phproundtable.com/) - The PHP Roundtable is a casual gathering of developers discussing topics that PHP nerds care about. * [PHP Roundtable](https://www.phproundtable.com/) - The PHP Roundtable is a casual gathering of developers discussing topics that PHP nerds care about.
* [PHP Town Hall](https://phptownhall.com/) - A casual PHP podcast by Ben Edmunds and Phil Sturgeon. * [PHP Town Hall](https://phptownhall.com/) - A casual PHP podcast by Ben Edmunds and Phil Sturgeon.
* [Voices of the ElePHPant](https://voicesoftheelephpant.com/) Interviews with the people that make the PHP community special. * [Voices of the ElePHPant](https://voicesoftheelephpant.com/) Interviews with the people that make the PHP community special.
### PHP Newsletters
*PHP-related news directly to your inbox.*
* [PHP Weekly](http://www.phpweekly.com/) - A weekly newsletter about PHP.
### PHP Magazines
*Fantastic PHP-related magazines.*
* [php[architect]](https://www.phparch.com/magazine/) - A monthly magazine dedicated to PHP.
### PHP Reading ### PHP Reading
*PHP-releated reading materials.* *PHP-releated reading materials.*
@ -951,18 +964,20 @@ Various resources, such as books, websites and articles, for improving your PHP
* [Preventing CSRF Attacks](https://blog.ircmaxell.com/2013/02/preventing-csrf-attacks.html) - An article on preventing CSRF attacks. * [Preventing CSRF Attacks](https://blog.ircmaxell.com/2013/02/preventing-csrf-attacks.html) - An article on preventing CSRF attacks.
* [Seven Ways to Screw Up BCrypt](https://blog.ircmaxell.com/2012/12/seven-ways-to-screw-up-bcrypt.html) - An article about correct BCrypt implementation. * [Seven Ways to Screw Up BCrypt](https://blog.ircmaxell.com/2012/12/seven-ways-to-screw-up-bcrypt.html) - An article about correct BCrypt implementation.
* [The 2018 Guide to Building Secure PHP Software](https://paragonie.com/blog/2017/12/2018-guide-building-secure-php-software) - A guide to building secure PHP software. * [The 2018 Guide to Building Secure PHP Software](https://paragonie.com/blog/2017/12/2018-guide-building-secure-php-software) - A guide to building secure PHP software.
* [Use Env](https://seancoates.com/blogs/use-env/) - An article about using the unix environment helper. * [Use Env](https://seancoates.com/blogs/use-env) - An article about using the unix environment helper.
### PHP Internals Reading ### PHP Internals Reading
*Reading materials related to the PHP internals or performance.* *Reading materials related to the PHP internals or performance.*
* [PHP RFCs](https://wiki.php.net/rfc) - The home of PHP RFCs (Request for Comments).
* [Externals](https://externals.io/) - PHP internal discussions.
* [PHP RFC Watch](https://php-rfc-watch.beberlei.de/) - Watch the latest PHP [RFCs](https://wiki.php.net/rfc).
* [Disproving the Single Quotes Myth](https://nikic.github.io/2012/01/09/Disproving-the-Single-Quotes-Performance-Myth.html) - An article about performance of single and double quoted strings. * [Disproving the Single Quotes Myth](https://nikic.github.io/2012/01/09/Disproving-the-Single-Quotes-Performance-Myth.html) - An article about performance of single and double quoted strings.
* [How Big Are PHP Arrays (And Values) Really?](https://nikic.github.io/2011/12/12/How-big-are-PHP-arrays-really-Hint-BIG.html) - An article about array internals. * [How Big Are PHP Arrays (And Values) Really?](https://nikic.github.io/2011/12/12/How-big-are-PHP-arrays-really-Hint-BIG.html) - An article about array internals.
* [How Foreach Works](https://stackoverflow.com/questions/10057671/how-does-php-foreach-actually-work/14854568#14854568) - A detailed StackOverflow answer about foreach. * [How Foreach Works](https://stackoverflow.com/questions/10057671/how-does-php-foreach-actually-work/14854568#14854568) - A detailed StackOverflow answer about foreach.
* [How Long is a Piece of String](http://blog.golemon.com/2006/06/how-long-is-piece-of-string.html) - An article about string internals. * [How Long is a Piece of String](http://blog.golemon.com/2006/06/how-long-is-piece-of-string.html) - An article about string internals.
* [PHP Evaluation Order](https://gist.github.com/nikic/6699370) - An article about evaluation order in PHP. * [PHP Evaluation Order](https://gist.github.com/nikic/6699370) - An article about evaluation order in PHP.
* [PHP Internals Book](http://www.phpinternalsbook.com) - An online book about PHP internals, written by three core developers. * [PHP Internals Book](http://www.phpinternalsbook.com) - An online book about PHP internals, written by three core developers.
* [PHP RFCs](https://wiki.php.net/rfc) - The home of PHP RFCs (Request for Comments).
* [Print vs Echo, Which One is Faster?](http://fabien.potencier.org/print-vs-echo-which-one-is-faster.html) - An article about print and echo performance. * [Print vs Echo, Which One is Faster?](http://fabien.potencier.org/print-vs-echo-which-one-is-faster.html) - An article about print and echo performance.
* [The PHP Ternary Operator. Fast or Not?](http://fabien.potencier.org/the-php-ternary-operator-fast-or-not.html) - An article ternary performance. * [The PHP Ternary Operator. Fast or Not?](http://fabien.potencier.org/the-php-ternary-operator-fast-or-not.html) - An article ternary performance.
* [Understanding OpCodes](http://blog.golemon.com/2008/01/understanding-opcodes.html) - An article about opcodes. * [Understanding OpCodes](http://blog.golemon.com/2008/01/understanding-opcodes.html) - An article about opcodes.
@ -971,8 +986,3 @@ Various resources, such as books, websites and articles, for improving your PHP
* [You're Being Lied To](http://blog.golemon.com/2007/01/youre-being-lied-to.html) - An article about internal ZVALs. * [You're Being Lied To](http://blog.golemon.com/2007/01/youre-being-lied-to.html) - An article about internal ZVALs.
* Collecting Garbage: [1](https://www.php.net/manual/en/features.gc.refcounting-basics.php) [2](https://www.php.net/manual/en/features.gc.collecting-cycles.php) [3](https://www.php.net/manual/en/features.gc.performance-considerations.php) - A series about the PHP garbage collection internals. * Collecting Garbage: [1](https://www.php.net/manual/en/features.gc.refcounting-basics.php) [2](https://www.php.net/manual/en/features.gc.collecting-cycles.php) [3](https://www.php.net/manual/en/features.gc.performance-considerations.php) - A series about the PHP garbage collection internals.
* PHP Source Code for Developers: [1](https://blog.ircmaxell.com/2012/03/phps-source-code-for-php-developers.html) [2](https://nikic.github.io/2012/03/16/Understanding-PHPs-internal-function-definitions.html) [3](https://blog.ircmaxell.com/2012/03/phps-source-code-for-php-developers_21.html) [4](https://nikic.github.io/2012/03/28/Understanding-PHPs-internal-array-implementation.html) - A series about the PHP source code. * PHP Source Code for Developers: [1](https://blog.ircmaxell.com/2012/03/phps-source-code-for-php-developers.html) [2](https://nikic.github.io/2012/03/16/Understanding-PHPs-internal-function-definitions.html) [3](https://blog.ircmaxell.com/2012/03/phps-source-code-for-php-developers_21.html) [4](https://nikic.github.io/2012/03/28/Understanding-PHPs-internal-array-implementation.html) - A series about the PHP source code.
### PHP Magazines
*Fantastic PHP-related magazines.*
* [php[architect]](https://www.phparch.com/magazine/) - A monthly magazine dedicated to PHP.