awesome-php/awesome-php.md
Jamie York d948db2622
2013-10-07 10:10:08 -07:00

31 KiB
Raw Blame History

Awesome PHP

A curated list of amazingly awesome PHP libraries, resources and shiny things.

Composer

  • Satis - A static Composer repository generator.
  • Composition - A library to check your Composer environment at runtime.
  • Poser - A Composer class aliasing library.
  • Version - A parsing and comparison library for semantic versioning.
  • NameSpacer - A library to convert from underscores to namespaces.
  • Patch Installer - A library to install patches using Composer.

Frameworks

  • Symfony2 - A framework comprised of individual components.
  • Knp RAD Bundle - A Rapid Application Development (RAD) bundle for Symfony 2.
  • Zend Framework 2 - Another framework comprised of individual components.
  • Laravel 4 - A simple PHP framework.
  • Lithium - Another framework of components.
  • Aura PHP - A framework of independent components.

Framework Components

Micro Frameworks

Templating

  • Twig - A comprehensive templating language.
  • Twig Cache Extension - A template fragment cache library for Twig.
  • Mustache - A PHP implementation of the Mustache template language.
  • Phly Mustache - Another PHP implementation of the Mustache template language.
  • MtHaml - A PHP implementation of the HAML template language.
  • Lex - A lightweight template parser.

HTTP

URL

Email

File

Streams

Dependency Injection

  • Pimple - A tiny dependency injection container.
  • Auryn - Another dependency injection container.
  • Di - Another flexible dependency injection container.
  • PHP DI - A dependency injection implementation using annotations.
  • Acclimate - A common interface to dependency injection containers and service locators.

Imagery

Testing

  • PHPUnit - A unit testing framework.
  • ParaTest - A parallel testing library for PHPUnit.
  • PHPSpec - A design by specification unit testing library.
  • Codeception - A full stack testing framework.
  • Atoum - A simple testing library.
  • Mockery - A mock object library for testing.
  • Phake - Another mock object library for testing.
  • Parody - Yet another mock object library for testing.
  • Sismo - A continuous testing server library.
  • Faker - A fake data generator library.
  • Alice - An expressive fixture generation library.
  • Behat - A Behaviour Driven Development framework.
  • Mink - Web acceptance testing.
  • HTTP Mock - A library for mocking HTTP requests in unit tests.
  • VFS Stream - A virtual filesystem stream wrapper for testing.

Documentation

Security

Code Analysis

  • PHP Parser - A PHP parser written in PHP.
  • Dissect - A set of tools for lexical and syntactical analysis.
  • PHP Mess Detector - A library that scans code for bugs, sub-optimal code, unused parameters and more.
  • PHP Code Sniffer - A library that detects PHP, CSS and JS coding standard violations.
  • PHPCPD - A library that detects copied and pasted code.
  • PHP Analyser - A library for analysing PHP code to find bugs and errors.
  • PHP CS Fixer - A coding standard fixer library.
  • PHP Manipulator - A library for analysing and modifying PHP Source Code.
  • PHP Refactoring Browser - A command line utility for refactoring PHP code.
  • UBench - A simple micro benchmark library.
  • Athletic - An annotation based benchmark framework.
  • Mondrian - A code analysis tool using Graph Theory.
  • PHP Debug Bar - A debugging toolbar.

Build Tools

  • Go - A simple PHP build tool.
  • Bob - A simple project automation tool.
  • Phake - A rake PHP clone library.
  • Box - A utility to build PHAR files.

Asset Management

  • Assetic - An asset manager pipeline library.
  • Pipe - Another asset manager pipeline library.
  • Munee - An asset optimiser library.
  • JShrink - A JavaScript minifier library.

Geolocation

Date and Time

Event

  • React - An event driven non-blocking I/O library.
  • Rx.PHP - A reactive extension library.
  • Ratchet - A web socket library.
  • Evenement - An event dispatcher library.
  • FuelPHP Event - Another event dispatcher library.

Logging

  • Monolog - A comprehensive logger.

Payment and Ecommerce

  • OmniPay - A framework agnostic multi-gateway payment processing library.
  • Payum - A payment abstraction library.
  • Sylius - An open source ecommerce solution.
  • Money - A PHP implementation of Fowler's money pattern.

PDF

  • Snappy - A PDF and image generation library.
  • WKHTMLToPDF - A tool to convert HTML to PDF.

ORM and Datamapping

NoSQL

  • MongoQB - A MongoDB query builder library.
  • Monga - A MongoDB abstraction library.
  • Predis - A feature complete Redis library.

Queue

Command Line

Authentication

  • Sentry - A framework agnostic authentication & authorisation library.
  • Sentry Social - A library for social network authentication.
  • OPAuth - A multi-provider authentication framework.
  • OAuth2 - An OAuth2 authentication server, resource server and client library.
  • PHP oAuthLib - Another OAuth library.
  • TwitterOAuth - A Twitter OAuth library.
  • Hawk - A Hawk HTTP authentication library.

Markup

Text and Numbers

  • ANSI to HTML5 - An ANSI to HTML5 convertor library.
  • Patchwork UTF-8 - A portable library for working with UTF-8 strings.
  • Numbers PHP - A library for working with numbers.
  • Math - A library for working with large numbers.
  • Color Jizz - A library for manipulating and converting colours.
  • UUID - A library for generating UUIDs.
  • Slugify - A library to convert strings to slugs.
  • Urlify - A PHP port of Django's URLify.js.
  • Text - A text manipulation library.
  • PHP Units of Measure - A library for converting between units of measure.

Filtering and Validation

REST and API

  • Hateoas - A HATEOAS REST web service library.
  • HAL - A Hypertext Application Language (HAL) builder library.
  • Negotiation - A content negotiation library.

Caching

  • Cache - A caching library (part of Doctrine).
  • Stash - Another library for caching.

Data Structure and Storage

Notifications

  • Nod - A notification library (e.g. Growl).
  • Notificato - A library for handling push notifications.
  • Notification Pusher - A standalone library for device push notifications.
  • Bernard - A structured message library for queues.
  • Notificator - A lightweight notification library.

Miscellaneous

  • Spork - A process forking library.
  • JSON Lint - A JSON lint utility.
  • KnpMenu - A menu library.
  • Pagerfanta - A pagination library.
  • Ruler - A simple stateless production rules engine.
  • LiteCQRS - A CQRS (Command Query Responsibility Separation) library.
  • Sslurp - A library that makes dealing with SSL suck less.
  • PHP Option An option type library.
  • Metrics - A simple metrics API library.
  • Sabre VObject - A library for parsing VCard and iCalendar objects.
  • Annotations - An annotations library (part of Doctrine).
  • Whoops - A pretty error handling library.
  • Finite - A simple PHP finite state machine.
  • LadyBug - A dumper library.
  • Plum - A deployer library.
  • Procrastinator - A library for running time consuming tasks.
  • Compose - A function composition library.
  • SuperClosure - A library that allows Closures to be serialized.
  • Jumper - A remote service executor library.
  • Underscore - A PHP port of the Underscore JS library.
  • PHP PassBook - A PHP library for iOS PassBook.
  • PHP Expression - A PHP expression language.
  • RMT - A library for versioning and releasing software.
  • Wise - A configuration manager.
  • Opengraph - An opengraph library.
  • Essence - A library for extracting web media.
  • Embera - An Oembed consumer library.
  • Graphviz - A Graphviz library.
  • Monad PHP - A simple Monad library.
  • Flux - A regular expression building library.
  • Patchwork - A library for redefining userland functions.
  • Galapagos - Evolutionary language transformation.
  • Design Patterns PHP - A repository of software patterns implemented in PHP.
  • PHPCR - A PHP port of the Java Content Repository (JCR).
  • Functional PHP - A functional programming library.

Third Party APIs

Utilities

  • HomeBrew - A package manager for OSX.
  • HomeBrew PHP - A PHP tap for HomeBrew.
  • PHP OSX - A PHP installer for OSX.
  • HipHop PHP - A Virtual Machine, Runtime and JIT for PHP by Facebook.
  • Vagrant - A portable development environment utility.
  • Ansible - A radically simple orchestration framework.
  • Puppet - A server automation framework and application.
  • Chef - A systems integration framework.
  • PuPHPet - A web tool for building PHP development virtual machines.
  • PHP Brew - A PHP version manager and installer.
  • PHP Env - Another PHP version manager.
  • PHP Switch - Another version manager.
  • PHP Build - Another PHP version installer.
  • PHP Queue - An application for managing queueing backends.
  • PHPPHP - A PHP VM implementation in PHP.
  • PHPSandbox - A PHP sandbox environment.
  • PHPStack - A TCP/IP stack proof of concept written in PHP.
  • SensioLabs Security Check - A web tool to check your Composer dependecies for security advisories.
  • Scrutinizer - A web tool to scrutinise PHP code.
  • Zed - An integrated penetration testing tool for web applications.
  • DBV - A database version control application.
  • Backup - A server backup tool written in Ruby.
  • Travis CI - A continuous integration platform.
  • Locust - A modern load test library written in Python.
  • Country List - A list of all countries with names and ISO 3166-1 codes.

Resources

E-Books

Reading