CakePHP – framework do szybkiego tworzenia aplikacji webowych. Został napisany w języku PHP, jest inspirowany frameworkiem Ruby on Rails i dystrybuowany na zasadach otwartej licencji X11 (MIT).
Projekt rozpoczął Michał Tatarynowicz w roku 2005, kiedy Ruby on Rails zaczął zdobywać popularność wśród developerów. CakePHP nie jest portem Ruby on Rails napisanym w PHP, jest natomiast do niego zbliżony w założeniach. Obecnie jego rozwojem zajmuje się Cake Software Foundation, Inc.
Założenia projektu:
- Kompatybilność z językiem programowania PHP w wersjach 4 oraz 5.
- Oparcie na wzorcu projektowym MVC (Model-Widok-Kontroler).
- Interakcja z bazą danych oparta o Active Record.
- Zintegrowana obsługa CRUD przy obsłudze baz danych oraz ułatwione tworzenie zapytań.
- Wbudowane listy kontroli dostępu (ang. ACL, Access Control List).
- Wykorzystanie technologii scaffoldingu.
- Wbudowana kontrola i walidacja danych.
- Komponenty do tworzenia mechanizmów zabezpieczeń i zarządzania sesjami.
- Szablony oparte na języku PHP (wzbogacone o metody pomocnicze dla formularzy, tabel, JavaScriptu, XML, RSS.
- Testy jednostkowe w oparciu o framework SimpleTest.
- Wsparcie dla lokalizacji i internacjonalizacji.
- Obsługa "przyjaznych" adresów URL.