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.
- Awesome CakePHP
- Skeleton
- Environment
- Debugging
- Templating
- Files
- Dependency Injection
- Imagery
- Testing
- Security
- Code Analysis
- Navigation
- Asset Management
- Geolocation
- Auditing / Logging
- E-commerce
- ORM and Datamapping
- NoSQL
- Queue
- Search
- Authentication and Authorization
- Markup
- Filtering and Validation
- REST and API
- Caching
- Notifications
- I18n
- Social
- SEO
- Third Party APIs
- Migration
- Miscellaneous
- Libs
- Software
- Web Applications
- Resources
- Conferences
- Contributing
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.
Plugins for enviroment
Enviroments plugin - Plugin to handle enviroments.Setup plugin - Plugin to handle very basic environments.
Plugins for debugging
- Airbrake plugin A plugin to seamlessly integrate Airbrake with CakePHP for errors and exceptions.
- DebugKit plugin - The de-facto standard for debugging.
- Setup plugin - A lightweight setup plugin containing debugging and maintenance tools.
- Whoops plugin - PHP error for cool kids with filp/whoops.
ClearCache plugin - For easily clearing the app cache(s).GraphVizModels plugin - Display your model relations graphically.
Plugins for templating and lexing.
- Address plugin - An address helper that outputs a marked up address.
- Bootstrap plugin - A Bootstrap 3 plugin with support for LESS.
- BootstrapUI plugin - Bootstrap 3 integration.
- CakeExcel plugin - An Excel view to generate XLSX files.
- Chocolate plugin - Front-End framework FormHelper extensions.
- CommonMark plugin - Adds CommonMark (markdown) support to models and views.
- Feed plugin - Containing an RssView class to easily generate (complex) RSS feeds.
- Js plugin - A library containing JS helper and alike (extracted from CakePHP2.x core).
- Liquid plugin - A plugin to use the Liquid templating language for views.
- Meta plugin - Makes handling meta tags and SEO relevant HTML markup DRY and easy.
- SocialMeta plugin - Adds support for Facebook's OpenGraph and Twitter's Card meta tags.
- TwigView plugin - A plugin to use the Twig Templating Language for views.
- VideoEmbed plugin - Helper for embedding YouTube, Vimeo and Dailymotion videos.
BoostCake plugin - A Twitter Bootstrap plugin.CML plugin - Provides further abstraction of the View layer by replacing the procedural PHP code with an XML based markup.CTK plugin - Allows views to be defined as a class.CakeFactory plugin - A factory for the Cake Toolkit (CTK), which provides configurable objects.CsvView plugin - A view to easily generate CSV.Mustache plugin - A Mustache plugin.Wysiwyg plugin - Support for various wysiwyg editors.
Plugins for sending and parsing email.
- Email plugin - Email helper, layout and more.
Mandrill plugin - Sending Email using Mandrill.SendGrid plugin - Plugin for SendGrid WebAPI.EmailQueue plugin - An email queue solution.Mailchimp plugin - The Mailchimp and Mandrill plugin.Postmark plugin - Makes email delivery using Postmark.
Plugins for file manipulation.
- FileStorage plugin - Abstract file storage and upload plugin.
- FlyPie plugin - Abstract filesystem access using Flysystem.
- Image plugin - Image behavior that works much like Cake's built in TranslateBehavior.
- Proffer plugin - A customisable upload plugin with thumbnail generation.
- Upload plugin - A little plugin to upload file.
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.
Plugins for manipulating images.
- Imagine plugin - An image manipulation plugin and wrapper around Imagine.
Plugins/Tools for testing codebases and generating test data.
- CakePHP Codeception module - The official CakePHP integration with Codeception.
- CakePHP CodeSniffer rules - The official CakePHP CS rules.
- CodeSniffer plugin - Auto-find code issues/smells and auto-fix CS errors.
- CodeSniffer plugin sniffs - Sniff packages/rules compatible with phpcs-fixer branch and the CodeSniffer plugin.
- Faker plugin - Faker support for CakePHP fixtures.
- Muffin plugin - FactoryMuffin support for CakePHP fixture records.
Plugins and information around security, preventing vulnerabilities and protection against XSS and alike.
- CipherBehavior plugin - Cipher your entities data with this behavior. Encryption is done at PHP level using CakePHP Security class.
Saving model data and security - Information on what to be careful about in 2.x when using CRUD forms and saving data.
Plugins for analysing, parsing and manipulation codebases.
- NewRelic plugin - Using New Relic for analysis and monitoring.
NewRelic plugin - Makes analyzing your CakePHP app in New Relic easier.
Tools for building navigation structures.
- KnpMenu plugin - A menu plugin based on the Knp Menu Library.
MenuBuilder plugin - A menu plugin.
Tools for managing, compressing and minifying website assets.
- AssetCompress plugin - A complete asset manager for CakePHP.
- Less plugin - Less parser plugin for CakePHP.
- MinifyHtml plugin - Compress HTML output.
Plugins for geocoding addresses and working with latitudes and longitudes.
- Geo plugin - Containing Geocoder behavior and GoogleMapsV3 helper.
Geocoder plugin - A lightweight geocoding plugin.
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.
Plugins and applications for taking payments and building online e-commerce stores.
Cart plugin - A shopping cart plugin.Payments plugin - Generic Payment Interface.Paypal plugin - To interact with Paypal's "classic" and new REST APIs.PaypalSource plugin - A Paypal REST client plugin.Stripe plugin - A Stripe component.
Plugins and software for working with PDF files.
- CakePdf plugin - A plugin around PDF generation.
Plugins that implement object-relational mapping or data-mapping techniques.
- Money plugin - Money data type for CakePHP entities using sebastianbergmann/money.
- Muffin/Trash plugin - Soft-delete behavior for CakePHP.
- SoftDelete plugin - Soft delete for CakePHP models.
- PersistRelatedData plugin - Behavior for persisting selected fields of related models.
Datasources plugin - Lots of different datasources.
Plugins for working with "NoSQL" backends.
MongoQB plugin - MongoDB database driver.NoSql - A low-lever interface to interact with nosql datasource.
Plugins for working with event and task queues.
- Queue plugin - A minimal dependency-free CakePHP only plugin around Queue.
CakeDjjob plugin - Quick and easy job queues, based on delayed_job.CakeResque plugin - A plugin for Resque, a library for creating background jobs.
Plugins and software for indexing and performing search queries on data.
- ElasticSearch plugin - Alternative ORM using Elastic Search as its backend.
- Search plugin - De-facto search form standard built on PRG pattern.
- Search plugin - Search provides a search module for CakePHP applications.
- PlumSearch plugin - Search plugin implements custom, flexible and extendable search strategies. Implements PRG pattern.
Elastic plugin - Connecting models to Elastic search types.OpenSearch plugin - For creating installable search plugins for IE, Firefox and Chrome.SimpleScope plugin - For scoping finds.Tags plugin - Tagging records the easy way.
Plugins and libraries for implementing authentication and authorization.
- Authenticate plugin - Authentication classes for AuthComponent.
- CookieAuth plugin - A simple Cake 3 plugin to automatically authenticate users with Cookies.
- HierAuth plugin - A CakePHP plugin for hierarchical, role based, simple authorization.
- HybridAuth plugin - A plugin which allows using the HybridAuth social sign on library with CakePHP.
- JwtAuth plugin - A plugin for authenticating using JSON Web Tokens.
- MultiTenant plugin - Easily build SaaS enabled web applications.
- Tools:Passwordable - Containing Passwordable behavior for a DRY approach on password hashing.
- TinyAuth plugin - Role based (single/multi) authentication as very light-weight approach.
- UserPermissions plugin - Allow groups of users or single users to view a specific page.
Authorize plugin - Authorize classes for AuthComponent.GoogleAuthenticate plugin - Containing Google 2 step authenticate class for AuthComponent.Sanction plugin - Centralize all of those permissions in a single file.
Plugins for working with markup.
- CommonMark plugin - Adds CommonMark Markdown parsing.
- Geshi plugin - For adding GeSHI syntax highlighting.
Decoda plugin - A lightweight bbcode parser plugin.Markdown plugin - A Markdown parser plugin.MarkupParsers plugin - A collection of parsers.
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 - A standards compliant HTML filter.Tidy plugin - Validate and generate tided HTML output.
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.
Plugins for caching data.
- Cache plugin - For caching views (HTML, CSV, JSON, XML, ...) as static cache files.
AutoCache plugin - A plugin that makes query caching easy.Cacher plugin - A plugin that caches query results.UrlCache plugin - Automatically cache the results of calls to Router.
Plugins for working with notification software.
Notification plugin - A plugin that provides an notification system.
Plugins for I18n (Internationalization) and L10n (Localization)
- I18n plugin - A plugin with I18n related tools.
- 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.
Localized plugin - Localized validation and ready-to-use translation PO files.
Plugins around social features
- SocialShare plugin - Link generator for sharing content on social networks.
Bookmark plugin - Creates links to popular bookmarking web-applications.Comments plugin - Allows users to comment records.Facebook plugin - Facebook plugin.Favorite plugin - Allows users to favor records.Feedback plugin - Providing feedback.Like plugin - Provides a feature similar to Facebook "Like".Ratings plugin - Allows users to rate records.Twitter plugin - A library to interface with Twitter and its OAuth workflow.
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.
Plugins for accessing third party APIs.
AmazonSdk plugin - A plugin around PHP AWS SDK library.Ratchet plugin - Brings the Ratchet websocket package to CakePHP.SMSFly plugin - Data source for sending SMS via sms-fly.Twitter plugin - A library to interface with Twitter and its OAuth workflow.
Plugins and resources around migration and upgrading
- Migrations plugin - (DB) Migration plugin.
- Upgrade app - Official upgrade app for 2.x=>3.x.
- Upgrade/Migration Guide - Official migration guide.
- Execution order - A 3.x test app to display the execution order of files, methods and callbacks.
Upgrade plugin - The most extensive 1.x=>2.x and partly =>3.x upgrade shells.
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.
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 for creating a 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.
- CakeBlog - Open source blog software.
- QuickApps-CMS - Open source content management system.
Croogo - Open source content management system.
Based on CakePHP3.x.
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.
Various resources, such as books, websites and articles, for improving your CakePHP development skills and knowledge.
Where to get help.
- CakePHP.ir - discussion with other devs and generic questions for Persian community.
- Google Group - This is for generic questions and alike.
- IRC Channel - Live chat/discussion with other devs and core devs.
- stackoverflow.com/questions/tagged/cakephp - This is for specific questions, ideally along with some example code.
- CakePHP-FR.org - The french community website.
- CakePHP-BR.org - The brazilian community website.
Useful and current CakePHP-related websites and blogs.
- AD7six.com - A CakePHP core dev blog.
- CakeDC - Articles around CakePHP.
- dereuromark.de - An extensive CakePHP core dev blog.
- florian-kraemer.net - A CakePHP related core dev blog.
- jadb.io - A CakePHP related core dev blog.
- jedistirfry.co.uk - A CakePHP related dev blog.
- josediazgonzalez.com - A mainly CakePHP related core dev blog.
- mark-story.com - CakePHP lead dev blog.
- waltherlalk.com - A CakePHP related core dev blog.
Very few but increasing CakePHP3.x articles.
Fantastic CakePHP-related (e)books.
CakePHP 2 Application Cookbook - CakePHP 2.x book by two core developers.Instant Starter - CakePHP2.x book (not for total PHP beginners).Rapid Application Development with CakePHP 2 - CakePHP 2.x book by CakePHP Core Developer @josegonzalez.
Written for CakePHP3.x.
Fantastic CakePHP-related videos.
- CakePHP - Channel about CakePHP videos.
Must-do tutorials.
Documentation and CakePHP-releated reading and listening materials.
- Cookbook(!) - The official documentation.
- CakePHP Podcast - The official CakePHP podcasts.
- CakePHP Reporter - a newspaper and collection of material about CakePHP.
Reading materials related to the CakePHP internals and decisions.
- Core Google Group - Discussions around the CakePHP core.
- Top 10 (and more) core contributors - Give 'em a hand.
International conference.
- cakefest.org - Annual CakePHP Conference.
Regional meet-ups.
- CakePHP-DE - MeetUps in Germany.
- CakePHP-NewYork - MeetUps in the New York Metropolitan Area.
- CakePHP-NL - MeetUps in Netherlands.
- CakePHP-France - MeetUps in France.
Please see CONTRIBUTING for details.
awesome-cakephp has been created by dereuromark and is currently maintained by him and the FriendsOfCake group. Thank you to all contributors, too.