美食 / 平台
CakePHP 3 网络应用程序平台
Requires
- php: >=5.5.11
- cakephp/cakephp: ~3.0
- cakephp/migrations: ~1.0
- cakephp/plugin-installer: *
- friendsofcake/bootstrap-ui: *
- friendsofcake/crud: dev-cake3
- gourmet/faker: ~1.0
- gourmet/robo: dev-master
- josegonzalez/dotenv: ~0.6
- markstory/asset_compress: ~3.0
- mobiledetect/mobiledetectlib: ~2.0
- psr/log: ~1.0
Requires (Dev)
- cakephp/bake: ~1.0
- cakephp/cakephp-codesniffer: ~2.0
- cakephp/codeception: dev-master
- cakephp/debug_kit: ~3.0
- codeception/specify: ~0.3
- codeception/verify: ~0.2
- gourmet/whoops: ~1.0
- psy/psysh: @stable
This package is auto-updated.
Last update: 2024-08-28 01:08:53 UTC
README
一个快速制作一些 美食 CakePHP 网络应用程序的框架。
注意:平台处于测试阶段,仍有一些包缺失,但已准备好帮助您快速开始您的 CakePHP 3 应用程序。
为什么选择它?
简单来说,官方应用程序框架非常基础(这也是合理的)。
平台尽可能复制官方应用程序框架,但通过一些结构性的变化、一些预安装/配置的库/插件以及一些“最佳实践”来脱颖而出。
预安装包
PHP 包
- cakephp/cakephp 为应用程序提供动力。
- cakephp/migrations - 官方的 CakePHP 迁移外壳。
- friendsofcake/bootstrap-ui 将 Bootstrap*-ify* CakePHP。
- friendsofcake/crud 以快速开始。
- gourmet/email 以更好地创建/管理电子邮件。
- gourmet/faker 生成 fixture 和种子数据。
- gourmet/robo 使用 Robo 运行构建或其他任务。
- josegonzalez/dotenv 以轻松管理环境变量。
- markstory/asset_compress 处理资源压缩、最小化等。
- mobiledetect/mobiledetectlib.
开发依赖
- cakephp/bake - 官方的 CakePHP bake 工具。
- cakephp/cakephp-codesniffer - 官方的 CakePHP 代码标准嗅探器。
- cakephp/codeception 官方的 CakePHP Codeception 模块。
- cakephp/debug_kit - 官方的 CakePHP 调试工具。
- codeception/specify PHPUnit & Codeception 的 BDD 代码块。
- codeception/verify PHPUnit 的 BDD 断言库。
- d11wtq/boris
- gourmet/whoops 美化错误和异常(仅在调试模式下)。
CSS/JS 资产
使用 robloach/component-installer 安装资产。
开始使用
假设您已经全局安装了以下内容
- Composer - PHP 包管理器
如果您(或已经)安装了所有这些,请运行
composer create-project -s dev gourmet/platform [app_name]
这将创建 app_name 项目文件夹并下载所有依赖项。
配置
平台的配置分为 '作用域' 部分
- 应用程序
- asset_compress
- 缓存
- 数据库
- 分发器
- 电子邮件
- 错误
- 日志
- 路径
- 插件
- 路由
- 安全
- 会话
这使得配置更加有序(与单个文件相比)并且可以通过你的IDE的模糊查找器轻松访问(在模糊查找器中尝试键入'log',第一个匹配的文件应该是日志配置文件)。
为了减少requires的数量,构建过程应将这些文件连接起来,并在生产中使用生成的文件。这尚未实现。
快速提示
在不修改任何文件的情况下启用debug
模式
touch .debug
或使用DEBUG
环境变量。
配置
为了保持DRY原则和避免重复造轮子,使用ansible-galaxy
(Ansible包管理器)。要安装角色
ansible-galaxy install --role-file ansible/requirements.yml --force
更多内容,请参阅[Ansible官方文档]。
本地开发
包含了一个Vagrantfile
,以便使用Ansible提供程序轻松启动本地虚拟机。根据您的需求修改它,但默认设置在大多数情况下应该是一个好的起点。它们假设
Box: trusty64
Box Url:
Memory: 512MB
CPUs: 1
Synced Folders: ./ -> /vagrant (using NFS)
ansible
提供程序是首选方法,但如果您没有在本地安装,请勿担心。shell提供程序将在虚拟机上安装Ansible并运行playbook。
您需要做的只是
vagrant up
手动运行playbook(在初始vagrant up
之后)
ansible-playbook ansible/provision.yml \
--private-key=.vagrant/machines/default/virtualbox/private_key \
-i .vagrant/provisioners/ansible/inventory/vagrant_ansible_inventory \
-u root
有时,运行上述命令会触发以下错误
fatal: [default] => SSH Error: Host key verification failed.
在这种情况下,请确保您的~/.ssh/known_hosts
待办事项
- 使用monolog/monolog来处理所有类型的日志。请参阅#2033。
- 添加到capcake部署的链接。
- 添加到rocketeer部署的链接。
版本控制
平台使用语义版本控制
给定版本号MAJOR.MINOR.PATCH,当您进行不兼容的API更改时,增加
- MAJOR版本,当您以向后兼容的方式添加功能时,增加
- MINOR版本,当您进行向后兼容的错误修复时,增加
- PATCH版本。
预发布和构建元数据标签可作为MAJOR.MINOR.PATCH格式的扩展提供。
许可证
版权(c)2015,Jad Bitar,并许可在MIT许可证下。