No Description

Mark Scherer 5839df62f5 Merge pull request #15885 from cakephp/nullable-hints 4 years ago
.github d787b6c678 Merge branch '4.next' into 5.x 4 years ago
config c295570ef5 Added float type annotation to TIME_START define 6 years ago
contrib 6314160643 Remove explicit standard from phpcs command. 7 years ago
src 1ceb3bb04a Use nullable type hints instead of |null 4 years ago
templates 97fc4c857a Fixed typos 5 years ago
tests 8c9a6dd205 Merge pull request #15863 from cakephp/5.0-connection-interface 4 years ago
.editorconfig 2f30f947ba Preferred indentation style for .neon files is using tabs. 5 years ago
.gitattributes 3af4af9936 Update .gitattributes 5 years ago
.gitignore b229a964ec Dont use a dist for a non changing file 5 years ago
.mailmap 8af28a5e99 Add o0h email to .mailmap 6 years ago
.stickler.yml 7bdeb04b0a Disable stickler for 5.x 4 years ago
LICENSE 1d36e9fbc5 Update LICENSE 7 years ago
Makefile 73384c3d4f Fix another make compatibility issue. 5 years ago
README.md ce7e8b8098 Update build status badge 5 years ago
SECURITY.md 4bb89e7c5c Add 4.0 to security policy 6 years ago
VERSION.txt b82a902345 Update version to 5.0.0-dev 4 years ago
composer.json 20f1ba7e29 Merge branch '4.next' into 5.x 4 years ago
phpcs.xml 936a6e0b52 Show phpcs sniff with each error 5 years ago
phpstan-baseline.neon 4822cea79a Remove use of ReturnTypeWillChange attribute. 4 years ago
phpstan.neon 4822cea79a Remove use of ReturnTypeWillChange attribute. 4 years ago
phpunit.xml.dist 9e074c91c3 Merge branch '4.next' into 5.x 4 years ago
psalm-baseline.xml 4822cea79a Remove use of ReturnTypeWillChange attribute. 4 years ago
psalm.xml 4822cea79a Remove use of ReturnTypeWillChange attribute. 4 years ago

README.md

CakePHP

Software License Build Status Coverage Status Code Consistency Total Downloads Latest Stable Version

CakePHP is a rapid development framework for PHP which uses commonly known design patterns like Associative Data Mapping, Front Controller, and MVC. Our primary goal is to provide a structured framework that enables PHP users at all levels to rapidly develop robust web applications, without any loss to flexibility.

Installing CakePHP via Composer

You can install CakePHP into your project using Composer. If you're starting a new project, we recommend using the app skeleton as a starting point. For existing applications you can run the following:

$ composer require cakephp/cakephp

For details on the (minimum/maximum) PHP version see version map.

Running Tests

Assuming you have PHPUnit installed system wide using one of the methods stated here, you can run the tests for CakePHP by doing the following:

  1. Copy phpunit.xml.dist to phpunit.xml.
  2. Add the relevant database credentials to your phpunit.xml if you want to run tests against a non-SQLite datasource.
  3. Run phpunit.

Some Handy Links

  • CakePHP - The rapid development PHP framework.
  • CookBook - The CakePHP user documentation; start learning here!
  • API - A reference to CakePHP's classes.
  • Awesome CakePHP - A list of featured resources around the framework.
  • Plugins - A repository of extensions to the framework.
  • The Bakery - Tips, tutorials and articles.
  • Community Center - A source for everything community related.
  • Training - Join a live session and get skilled with the framework.
  • CakeFest - Don't miss our annual CakePHP conference.
  • Cake Software Foundation - Promoting development related to CakePHP.

Get Support!

  • Slack - Join us on Slack.
  • #cakephp on irc.freenode.net - Come chat with us, we have cake.
  • Forum - Official CakePHP forum.
  • GitHub Issues - Got issues? Please tell us!
  • Roadmaps - Want to contribute? Get involved!

Contributing

Security

If you’ve found a security issue in CakePHP, please use the following procedure instead of the normal bug reporting system. Instead of using the bug tracker, mailing list or IRC please send an email to security [at] cakephp.org. Emails sent to this address go to the CakePHP core team on a private mailing list.

For each report, we try to first confirm the vulnerability. Once confirmed, the CakePHP team will take the following actions:

  • Acknowledge to the reporter that we’ve received the issue, and are working on a fix. We ask that the reporter keep the issue confidential until we announce it.
  • Get a fix/patch prepared.
  • Prepare a post describing the vulnerability, and the possible exploits.
  • Release new versions of all affected versions.
  • Prominently feature the problem in the release announcement.