/awesome-cakephp

A curated list of amazingly awesome CakePHP plugins, resources and shiny things.

Do What The F*ck You Want To Public LicenseWTFPL

Awesome CakePHP

A curated list of amazingly awesome CakePHP plugins, resources and shiny things.

Also see plugins.cakephp.org/packages/categories as a categorized list. You may also want to check out the PHP list at awesome-php as well as the generic awesome-awesomeness list.

This list is specifically for CakePHP 3.x (for CakePHP 2.x please see the cake2 branch). It is a recommendation for good plugins and solutions for this major CakePHP version.

Note: Strike-through means, that this CakePHP 2.x plugin/resource has not yet been upgraded to 3.x.

The main advantage of this list compared to plugins.cakephp.org is, that here it can also be a subpart of a plugin - instead of only the whole plugin/repo itself. The grouping might also be more granular. Focus is on the specific task.

Skeleton

Plugins and repositories around app skeletons

  • App template - An empty CakePHP project for use with composer.
  • Crud plugin - CakePHP Application development on steroids - rapid prototyping / scaffolding & production ready code.
  • Plugin Skeleton - A skeleton example to create a Cake3 plugin.
  • Bake template "setup" - An example template on how customization of bake templates is possible.

Environment

Plugins for enviroment

Debugging

Plugins for debugging

Templating

Plugins for templating and lexing.

Email

Plugins for sending and parsing email.

Files

Plugins for file manipulation.

Dependency Injection

Plugins that implement the dependency injection design pattern.

  • PipingBag plugin - Dependency injection container plugin that adds the ability to configure object instances and their dependencies before they are used, and to store them into a container class for easy access.
  • CakeDependency plugin - Provides a dependency injection container and service registry/locator.

Imagery

Plugins for manipulating images.

Testing

Plugins/Tools for testing codebases and generating test data.

Security

Plugins and information around security, preventing vulnerabilities and protection against XSS and alike.

Code Analysis

Plugins for analysing, parsing and manipulation codebases.

Navigation

Tools for building navigation structures.

Asset Management

Tools for managing, compressing and minifying website assets.

Geolocation

Plugins for geocoding addresses and working with latitudes and longitudes.

Auditing / Logging

Plugins for auditing and logging.

  • Blame plugin - Plugin to update created_by and modified_by fields with logged in user id.
  • Footprint plugin - Plugin to allow passing currently logged in user to model layer.
  • Version plugin - A plugin that facilitates versioned database entities.
  • AuditLog plugin - Records changes made to an object during CRUD operations.
  • DatabaseLog plugin - Logging to the DB instead of filesystem.
  • Monolog plugin - Use the comprehensive logger capabilities of Monolog.
  • Tools:WhoDidIt - Containing WhoDidIt behavior to record changes made to an object during CRUD operations.

E-commerce

Plugins and applications for taking payments and building online e-commerce stores.

PDF

Plugins and software for working with PDF files.

ORM and Datamapping

Plugins that implement object-relational mapping or data-mapping techniques.

NoSQL

Plugins for working with "NoSQL" backends.

  • MongoQB plugin - MongoDB database driver.
  • NoSql - A low-lever interface to interact with nosql datasource.

Queue

Plugins for working with event and task queues.

Search

Plugins and software for indexing and performing search queries on data.

Authentication and Authorization

Plugins and libraries for implementing authentication and authorization.

Markup

Plugins for working with markup.

Filtering and Validation

Plugins for filtering and validating data.

REST and API

Plugins and web tools for developing REST-ful APIs.

  • Cors plugin - A lightweight plugin for adding CORS headers to specified endpoints.
  • Rest plugin - a painless REST server Plugin for CakePHP.

Caching

Plugins for caching data.

Notifications

Plugins for working with notification software.

I18n

Plugins for I18n (Internationalization) and L10n (Localization)

Social

Plugins around social features

SEO

Search Engine Optimization

  • Tools:Slugged - Containing Slugged behavior to auto-generate URL-compatible slugs from titles.
  • Slug plugin - A plugin for generating slugs and finding records by slug. Uses a pluggable architecture which allows using your own slug generator class.
  • Sluggable plugin - A simple Cake3 plugin to slug fields and find records by slug.
  • Seo plugin - SEO plugin.
  • Sitemap plugin - Generates HTML and XML sitemaps for your CakePHP application.

Third Party APIs

Plugins for accessing third party APIs.

Migration

Plugins and resources around migration and upgrading

Miscellaneous

Misc plugins and libraries

  • Ajax plugin - A plugin to ease handling AJAX requests.
  • CakeManager plugin - A user management plugin with a built-in admin area.
  • CurrencyConverter plugin - A plugin to convert currency into another one.
  • Dashboard plugin - Build beautiful dashboards for your cakes!
  • Sequence plugin - Behavior for maintaining ordered list of records.
  • Setup:Maintenance - Maintenance shell to go into maintenance mode for all requests with optional IP whitelisting.
  • Shim plugin - A plugin containing useful shims and improvements as basis for your application.
  • Tools plugin - Containing lots of useful libs, helpers, behaviors, components, shells, ...
  • Travis - Easy travis setup for CakePHP plugins.
  • UserTools plugin - User tools for login, registration, password reset and more. Works out of the box CRUD like and is highly configurable.
  • Utils plugin - Containing useful components (Authorizer, Menu) and behaviors (WhoDidIt, Uploadable, Metas, Stateable).
  • Yaml plugin - For using YAML config files instead of PHP arrays.
  • Dotcake - Provides CakePHP project info for editor's cakephp plugins.
  • Ftp plugin - FTP/SFTP plugin.
  • Jsonrpc plugin - Provides server and client implementations of JSON-RPC.
  • Users plugin - For allowing users to register and login manage their profile.
  • MaintenanceMode plugin - Show a custom template for all requests when in maintainance with optional IP whitelisting.

Libs

Useful libraries or tools that don't fit in the categories above.

  • Aura.Intl - A powerful I18n library - used in CakePHP3.x core.
  • Capcake - Deploy CakePHP applications using Capistrano.
  • Carbon - A simple DateTime API extension - used in CakePHP3.x core.
  • Composer Installers - A multi framework Composer library installer.
  • Composer/Packagist - A package and dependency manager.
  • Graphviz - A Graphviz library.
  • Jenkins - The free alternative for private (GitHub) repos.
  • Rocketeer - PHP task runner and deployment package.
  • Travis CI - A continuous integration platform - de-facto standard for testing (GitHub) repos.

Software

Software for creating a development environment.

Development Environment

Software and tools for creating a sandboxed development environment.

  • Cakebox - A Vagrant development environment powered by the CakePHP 3.x Console.
  • PuPHPet - Web interface for building a Vagrant + Puppet box.
  • Puppet - A server automation framework and application.
  • Vagrant - A portable development environment utility.
  • CakePHP.gitignore - The .gitignore file proposals.

Web Applications

CMS and applications built on CakePHP

  • CakeBlog - Open source blog software.
  • QuickApps-CMS - Open source content management system.
  • Croogo - Open source content management system.

Based on CakePHP3.x.

Demo

Web-based (demo) applications and tools.

  • Bookmarkr A bookmarking application built with the CRUD plugin.
  • CakeFest - Demo application around the annual CakePHP Conference "CakeFest".
  • CakePHP Sandbox - A sandbox CakePHP application.
  • Query Examples Advanced query building examples.
  • Xeta - A resource to help people starting with CakePHP.

Based on CakePHP3.x.

Resources

Various resources, such as books, websites and articles, for improving your CakePHP development skills and knowledge.

Help

Where to get help.

CakePHP Websites

Useful and current CakePHP-related websites and blogs.

Very few but increasing CakePHP3.x articles.

CakePHP Books

Fantastic CakePHP-related (e)books.

Written for CakePHP3.x.

CakePHP Videos

Fantastic CakePHP-related videos.

  • CakePHP - Channel about CakePHP videos.

CakePHP Tutorials

Must-do tutorials.

CakePHP Reading and Listening

Documentation and CakePHP-releated reading and listening materials.

CakePHP Internals Reading

Reading materials related to the CakePHP internals and decisions.

Conferences

Official

International conference.

MeetUps

Regional meet-ups.

Contributing

Please see CONTRIBUTING for details.

Credits

awesome-cakephp has been created by dereuromark and is currently maintained by him and the FriendsOfCake group. Thank you to all contributors, too.