Skip to main content

Awesome CakePHP

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

Plugins with the "๐Ÿ“" icon have CakePHP 4 compatible release too.

If you are looking for CakePHP 2.x resources please visit:

Additional lists you might find useful:

For those wondering; this list differs from plugins.cakephp.org by supporting plugin subparts (instead of only the whole plugin/repo), more granular grouping and the primary focus on task specific functionality.

Table of Contentsโ€‹

Plugins

APMโ€‹

Plugins for Application Performance Monitoring.

  • NewRelic plugin - A complete plugin that enables full New Relic integration for a CakePHP application, including CLI naming, exceptions sending, custom timings, etc.
  • NewRelic plugin - A simple plugin that enables just name transaction and browser timing using the New Relic PHP agent.

Architectureโ€‹

Asset Managementโ€‹

Tools for managing, compressing and minifying website assets.

Auditing / Loggingโ€‹

Plugins for auditing and logging.

Authentication and Authorizationโ€‹

Plugins and libraries for implementing authentication and authorization.

Cachingโ€‹

Plugins for caching data.

  • ๐Ÿ“ Cache plugin - For caching views (HTML, CSV, JSON, XML, ...) as static cache files.

Code Analysisโ€‹

Plugins for analysing, parsing and manipulation codebases.

  • ๐Ÿ“ CakeDC/PHPStan - A PHPStan extension to resolve CakePHP magic around getter return types for the static analyzer.
  • ๐Ÿ“ IdeHelper plugin - Helps to make IDE support better by adding annotations to your existing code similar to what baking does to new code.
  • ๐Ÿ“ TestHelper plugin - Provides testing enhancements and TDD support as browser backend.

Debuggingโ€‹

Plugins for debugging and local development.

  • Airbrake plugin A plugin to seamlessly integrate Airbrake with CakePHP for errors and exceptions.
  • AssociationsDebugger plugin - A plugin that draws your model associations as diagram.
  • ๐Ÿ“ CakephpWhoops plugin - PHP errors and exceptions for cool kids with filp/whoops.
  • ๐Ÿ“ DebugKit plugin - The de-facto standard for debugging.
  • ErrorEmail plugin - A plugin to email exception/error information to your dev team.
  • ๐Ÿ“ Execution order - A demo app to display the execution order of files, methods and callbacks.
  • Psa/FixtureCheck plugin - A plugin to help detect mismatches in live DB and fixtures in order to make fixture based tests more reliable and deployments safer.
  • ๐Ÿ“ Sentry plugin A plugin to seamlessly integrate Sentry with CakePHP for errors and exceptions.
  • ๐Ÿ“ Setup plugin - A lightweight setup plugin containing debugging and maintenance tools.

Dependency Injectionโ€‹

Plugins that implement the dependency injection design pattern.

  • PimpleDi plugin Allows dependency injection based on Pimple library.
  • 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.

E-commerceโ€‹

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

  • PaypalWPP plugin - For communicating with Paypal Web Payments Pro for transactions and information about your account.

Emailโ€‹

Plugins for sending and parsing email.

Environmentโ€‹

Plugins for environment.

File Manipulationโ€‹

Plugins for file manipulation.

Filtering and Validationโ€‹

Plugins for filtering and validating data.

  • Gourmet/Filters plugin - Extra dispatcher filters (maintenance, robots, ip, etc).
  • Gourmet/Validation plugin - Extra validation providers (Respect, IsoCodes, etc.) and rules.
  • HtmlPurifier plugin - Purifier Plugin that features a trait, behavior and helper to allow you to get sanitization and filtering where you need it. You can configure multiple sets of filter rules as well.
  • HtmlPurifier plugin - Purifier Plugin Behavior that cleanses data before it is marshaled into the entity and/or before saving.

Geolocationโ€‹

Plugins for geocoding addresses and working with latitudes and longitudes.

HTTPโ€‹

Plugins for HTTP and client abstraction

I18nโ€‹

Plugins for I18n (Internationalization) and L10n (Localization).

  • ๐Ÿ“ ADmad/I18n plugin - A plugin with I18n related tools.
  • ๐Ÿ“ Cake/Localized plugin - Localized validation and ready-to-use translation PO files.
  • ๐Ÿ“ ShadowTranslate plugin - A plugin with shadow table based replacement for core's Translate behavior.
  • Transifex plugin - Managing i18n PO files and translations via Transifex API.
  • Translate plugin - Manage translations of your static content the easy way via web backend, incl. import from POT files, auto-suggest and auto-translate via API.
  • Translation plugin - Extract pot files, translate string (manually, google, community), export translations to pot files.

Imageryโ€‹

Plugins for manipulating images.

Libsโ€‹

Useful libraries or tools that don't fit in any of the other categories.

Markupโ€‹

Plugins for working with markup.

Migrationโ€‹

Plugins and resources around migration and upgrading.

Miscellaneousโ€‹

Misc plugins and libraries.

  • ActionsClass plugin - Gives you the ability to manage your Controller actions as single classes.
  • ๐Ÿ“ Ajax plugin - A plugin to ease handling AJAX requests.
  • CakeAdmin plugin - A non-stable user management plugin with a built-in admin area.
  • ๐Ÿ“ CakeDC/Enum plugin - A plugin to add enumeration list support to your app.
  • ๐Ÿ“ CakeDto plugin - Quickly generate useful data transfer objects for your app (mutable/immutable), replacing messy arrays and leveraging your IDE through typehinting and autocomplete.
  • ๐Ÿ“ CakeImpersonate plugin - A component that stores the current authentication session and creates new session for impersonating Users. User can revert back to original authentication sessions without the need to re-login.
  • CakeMiddlewares - A collection of Cakephp Middlewares.
  • ๐Ÿ“ Calendar plugin - For generating basic calendars. Includes IcalView for ICS calendar file generation.
  • Comments plugin - A fully customizable Comments plugin.
  • CurrencyConverter plugin - A plugin to convert currency into another one.
  • Dashboard plugin - Build beautiful dashboards for your cakes.
  • DatabaseBackup plugin - A plugin to export, import and manage database backups.
  • ๐Ÿ“ Feedback plugin - Allow visitors to send quick and easy feedback incl. a screenshot via sidebar form.
  • ๐Ÿ“ Flash plugin - More powerful flash messages for your application.
  • ๐Ÿ“ OPCache Preloader - An OPCache Preloader for CakePHP 4.x applications.
  • OrcaServices/Heartbeat plugin - Monitor the hearbeat of your application (e.g. whether the database is available and up-to-date).
  • Inertia plugin - Server side adapter for Inertia.js.
  • Interval plugin - Converts seconds to human readable string (string to seconds), uses business hours (1 week = 5 days, 1 day = 8 hours).
  • LinkScanner plugin - A plugin for recursively scanning links.
  • Robotusers/Tactician plugin - Tools for Tactician command bus integration.
  • ๐Ÿ“ 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.
  • TokenVerify plugin - Easily issue tokens that can be used for mail authentication.
  • ๐Ÿ“ Tools plugin - Containing lots of useful libs, helpers, behaviors, components, shells and more.
  • 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).
  • Wrench plugin - Maintenance Mode plugin. Easily extensible and customizable.
  • Yaml plugin - For using YAML config files instead of PHP arrays.

Tools for building navigation structures.

NoSQLโ€‹

Plugins for working with "NoSQL" backends.

Notificationsโ€‹

Plugins for working with notification software.

  • ker0x/CakeGcm plugin - A plugin to send downstream messages to an Android or iOS device through Google Cloud Messaging.
  • Notifier plugin - A plugin that makes creating and reading notifications easy.
  • ker0x/Push plugin - A plugin to send push notifications through services like Firebase Cloud Messaging.

ORM / Database / Datamappingโ€‹

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

PDFโ€‹

Plugins and software for working with PDF files.

Queueโ€‹

Plugins for working with event and task queues.

  • CakeResque plugin - A plugin for Resque, a library for creating background jobs.
  • ๐Ÿ“ CakeQueuesadilla plugin - A plugin that provides queueing integration with a variety of backends (BeanstalkD, MySQL, Redis, etc.).
  • Gearman plugin - A plugin for offloading CakePHP tasks to a Gearman Job Server.
  • ๐Ÿ“ Queue plugin - A minimal and dependency-free queue solution.

REST and APIโ€‹

Plugins and web tools for developing REST-ful APIs.

  • ๐Ÿ“ Alt3/Swagger plugin - Swagger 2.0 documentation for your CakePHP APIs using swagger-php and swagger-ui.
  • Alt3/ValidationExposer plugin - Easily expose your application's validation rules.
  • ApiPagination plugin - Injects pagination information from CakePHP's Paginator into serialized JsonView and XmlView responses.
  • ๐Ÿ“ CakeDC/Api plugin - All-in-one solution to provide a complete API. It includes versioning, renderers, CRUD, authentication, extensions (paginate, filter, HATEOAS), and much more.
  • Cors plugin - Activate CORS with Middleware.
  • Cors plugin - A lightweight plugin for adding CORS headers to specified endpoints.
  • CrudJsonApi plugin - Crud listener for building JSON API compliant APIs.
  • ๐Ÿ“ FractalTransformerView plugin - A plugin which allows using Fractal transformers for your API output.
  • ๐Ÿ“ MixerApi - Streamline development of modern RESTful APIs for your teams CakePHP project.
  • ๐Ÿ“ SwaggerBake plugin - This plugin automatically builds your Swagger UI documentation from your existing models and routes. A redoc option is also available.

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

Securityโ€‹

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

  • ๐Ÿ“ Bruteforce - Simple way to add Brute Force Protection to your installation without involving database.
  • BryanCrowe/EncryptedType - Simple solution that enables Encrypted data types to be stored in the database.
  • ๐Ÿ“ Captcha plugin - Simple, unobstrusive and extendable captcha solution providing by default an image based math captcha.
  • CipherBehavior plugin - Cipher your entities data with this behavior. Encryption is done at PHP level using CakePHP Security class.
  • ๐Ÿ“ Expose plugin - Expose entities through additional UUIDs instead of their AIID primary keys to obfuscate those IDs and data associated with these numerically ordered values.
  • ๐Ÿ“ Muffin/Obfuscate plugin - Primary key obfuscation/shortening using UUIDs, HashIds, Optimus, Tiny and/or custom obfuscation strategies.
  • ๐Ÿ“ Muffin/Throttle plugin - A plugin for rate limiting (API) requests.
  • ๐Ÿ“ Recaptcha plugin - Simple, lightweight Google Recaptcha v2.
  • Recaptcha Mailhide plugin - A plugin that allows you to hide email addresses using reCAPTCHA.
  • StopSpam plugin - A plugin that allows you to check if a username, email address or IP address has been reported as a spammer.

SEOโ€‹

Search Engine Optimization.

  • ๐Ÿ“ Muffin/Slug plugin - A plugin for generating slugs and finding records by slug. Uses a pluggable architecture which allows using your own slug generator class.
  • Seo plugin - Auto-creates and manages your SEO tags.
  • Sluggable plugin - A simple Cake3 plugin to slug fields and find records by slug.
  • ๐Ÿ“ Tools:Slugged - Containing Slugged behavior to auto-generate URL-compatible slugs from titles.

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.
  • ๐Ÿ“ MixerApi/Bake - Bake theme for generating RESTful controllers.
  • Plugin Skeleton - A skeleton example to create a Cake3 plugin.

Socialโ€‹

Plugins around social features.

  • CakeDC/Forum plugin - Forum plugin including categories, threads and replies, reporting messages, moderators, admin interface and more.
  • ๐Ÿ“ Ratings plugin - Allows users to rate records and displays ratings.
  • SocialShare plugin - Link generator for sharing content on social networks.

Templatingโ€‹

Plugins for templating and lexing.

Testingโ€‹

Plugins/Tools for testing codebases and generating test data.

Third Party APIsโ€‹

Plugins for accessing third party APIs.

Software

Software for creating a development environment.

Development Environmentโ€‹

Software and tools for creating a sandboxed development environment.

  • CakePHP.gitignore - The .gitignore file proposals.
  • ๐Ÿ“ CakePHP Docker - A cakephp/app template for docker and kubernetes setup.
  • CakePHP Vagrant Setup - Tool for spinning up multiple CakePHP 3.x Vanilla Dev Environments.
  • Devilbox - A docker development environment for (CakePHP) apps to be auto-setup including a lot of tools.
  • Docker - CakePHP in a docker container environment.
  • ๐Ÿ“ Galley - A small Docker dev environment for CakePHP development which includes a simple command line utility.
  • Mixer - A plugin to discover and manage CakePHP plugins.
  • NetBeans - This package provides support for CakePHP in NetBeans 8.1+.
  • Oven - Setup your favorite framework with 1 file and 1 click.
  • PhpStorm plugin - CakePHP auto-completion support for console commands in PhpStorm IDE.
  • Puppet - A server automation framework and application.
  • Vagrant - A portable development environment utility.

IDE specific compatibility information and tips can be found here.

Web Applicationsโ€‹

CMS and applications built on CakePHPโ€‹

Demoโ€‹

Web-based (demo) applications and tools.

  • BlogMVC - A simple Blog example with CakePHP based on BlogMVC Project.
  • Bookmarkr A bookmarking application built with the CRUD plugin.
  • CakeFest - Demo application around the annual CakePHP Conference "CakeFest".
  • Croogo 3.x - Croogo 3.x demo
  • RealWorld - Example CakePHP codebase containing real world examples (CRUD, auth, advanced patterns and more) that adheres to the RealWorld spec and API.
  • Sandbox - A sandbox CakePHP application with lots of demos and plugin showcasings.
  • Query Examples Advanced query building examples.
  • Xeta - A resource to help people starting with CakePHP.
  • Vue.js Demo App - A CakePHP + VueJS single page application skeleton.

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.

CakePHP Books and Articlesโ€‹

Fantastic CakePHP-related (e)books and other reading material.

CakePHP Videosโ€‹

Fantastic CakePHP-related videos.

  • CakePHP - Channel about CakePHP videos.

CakePHP Tutorialsโ€‹

Must-do tutorials.

CakePHP Reading and Listeningโ€‹

Documentation and CakePHP-related 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.

Contribute to this list: https://github.com/friendsofcake/awesome-cakephp