cookyii/project
Composer 安装命令:
composer require cookyii/project
包简介
Base application for Cookyii CMF
关键字:
README 文档
README
cookyii/project это каркас приложения Yii 2
оптимизированный под средние и большие проекты, которые состоят из нескольких приложений
(как правило - админа + публичный сайт, но могут добавляться и другие виды.
Например rest, erp, crm, мобильное приложение и тд).
Каркас включает базовые функции для работы cms, а также предоставляет инфраструктуру для работы готовых модулей, реализующий ту или иную функциональность.
Структура директорий
На данный момент в шаблоне представлено три приложения - frontend, backend и crm.
Это всего лишь пример набора приложений.
Можно смело удалять любые приложения, либо создавать свои собственные.
conf.d/ файлы конфигурации для окружения (например nginx или rabbitmq)
common/ общие компоненты для всех приложений
frontend-app/ код приложения frontend
frontend-assets/ ресурсы для приложения frontend
frontend-modules/ модули приложения frontend
backend-app/ код приложения backend
backend-assets/ ресурсы для приложения backend
backend-modules/ модули приложения backend
crm-app/ код приложения crm
crm-assets/ ресурсы для приложения crm
crm-modules/ модули приложения crm
messages/ переводы языковых строк для всех приложений
resources/ модели ActiveRecord для всех приложений
vendor/ пакеты сторонних разработчиков
Структура директорий внутри проиложения
frontend-assets/ исходники ресурсов, которые будут опубликованны в публичной части приложения
frontend-app/
assets/ бандлы с ресурсами приложения
components/ компоненты приложения
config/ конфигурация приложения
controllers/ контроллеры приложения
tests/ автоматические тесты приложения
views/ представления (view) приложения
web/ публичная часть приложения, доступная из веба
widgets/ виджеты приложения
Структура директорий внутри модуля
frontend-modules/
ModuleName/
assets/ ресурсы и бандлы для модуля
commands/ контроллеры команд для выполнения в терминале (cli)
components/ компоненты модуля
controllers/ контроллеры модуля
views/ представления (view) модуля
widgets/ виджеты модуля
Системные требования
- PHP 5.4 или выше
- NodeJS 0.10 или выше
- Composer
- npm
Установка (first deploy)
-
В консоли выполните команду
composer create-project --prefer-dist --stability=dev cookyii/project new-project
-
Перейдите в директорию
new-projectи запустите процес инсталяции с помощью команды./build install. Скрипт задаст несколько вопросов и выполнит следующие действия:- Создаст новую схему в базе данных (
install/database) - Создаст нового пользователя в базе данных и даст ему права на доступ к новой схеме (
install/mysqlUserName) - Скопирует файл
.env.dist.phpв.env.phpи заполнит некоторые поля автоматически.
- Создаст новую схему в базе данных (
-
Проверьте, что в созданном файле конфигурации
.env.phpзаполнены все необходимые поля. -
(опционально) Скопируйте файлы
~/*-app/.credentials.dist.phpв~/*-app/.credentials.php(в директориях приложений), заполнить необходимые данные. -
Соберите билд с помощью команды
./build(для продакшена./build prod). -
Создайте нового пользователя - администратора с помощью команды
./yii account/add -
(опционально) Если Вам не нужны приложения
crmиbackend, Вы можете удалить директорииcrm-app,crm-assets,crm-modules,backend-app,backend-assetsиbackend-modules. Аналогично, если Вам нужно какое-то дополнительное приложение (напримерrest), Вы можете создать схожие директории. -
Настройте виртуальные хосты для Ваших приложений, например:
new-project.com -> .../frontend-app/web backend.new-project.com -> .../backend-app/web crm.new-project.com -> .../crm-app/web
Вот и всё, восемь простых шагов =)
После всех этих манипуляций, Ваш новый сайт должен быть доступен по адресу new-project.com.
Обновление проекта (deploy)
- Обновите кодовую базу проекта из Вашего репозитория (например
git pull). - Соберите билд с помощью команды
./build(для продакшена./build prod).
Настройка
Вы можете изменять любые настройки в директориях
./common/config/, ./frontend-app/config/, ./backend-app/config/, ./crm-app/config/, ./console-app/config/
и в конфигурации билда проекта.
Доступные команды ./build
./build install- запустить процесс установки../buildили./build dev- собрать проект для dev площадки../build demo- собрать проект для demo площадки../build prod- собрать проект для продакшена.
Дополнительно доступны следующие команды (они выполняются в рамках set/* команд, и сюда добавлены только для справки):
./build map- показать список всех команд../build self/update- обновить библиотеку сборкиbuild.phar../build clear- удалить все временные файлы и логи во всех приложениях../build clear/*- удалить все временные файлы и логи в конкретном приложении../build composer- установитьcomposerзависимости изcomposer.lock../build composer/update- скачать новые версииcomposerзависимостей и обновитьcomposer.lock../build composer/install- скачать новые версииcomposerзафиксированные вcomposer.lock../build composer/install-prod- скачать новые версииcomposerзафиксированные вcomposer.lockбезrequire-dev../build composer/selfupdate- обновитьcomposer../build composer/update-fxp- обновить плагинfxp/composer-asset-plugin../build npm/install- установить зависимостиnpm../build npm/update- обновить зависимостиnpm../build bower/install- установить зависимостиbower../build bower/update- обновить зависимостиbower../build migrate- выполнить все новые миграции для всех приложений../build migrate/*- выполнить все новые миграции для конкретного приложения../build rbac- обновить правилаrbacдля всех приложений../build rbac/*- обновить правилаrbacдля конкретного приложения../build less- скомпилироватьlessдля всех приложений../build less/*- скомпилироватьlessдля конкретного приложения.
cookyii/project 适用场景与选型建议
cookyii/project 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 42 次下载、GitHub Stars 达 3, 最近一次更新时间为 2015 年 06 月 18 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「framework」 「cmf」 「cookie」 「yii2」 「cookyii」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 cookyii/project 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 cookyii/project 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 cookyii/project 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
PHP Framework HLEB2 is the foundation of the web application. Provides ease of development and application performance.
Add a configurable cookie consent banner to the website.
rocket cmf
Lets you add a symfony form field with a visual inline editor for all your templates with CKEditor
Popup component for Nette Framework
Cookie Consent is a lightweight JavaScript plugin for alerting users about the use of cookies on your website.
统计信息
- 总下载量: 42
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 3
- 点击次数: 21
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: BSD-3-Clause
- 更新时间: 2015-06-18