phact-cmf / default
Installs: 183
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 2
Open Issues: 0
Language:JavaScript
Requires
- monolog/monolog: ~1.23
- phact-cmf-modules/admin: ~3.0.0
- phact-cmf-modules/assets: ~3.0.0
- phact-cmf-modules/base: ~3.0.0
- phact-cmf-modules/editor: ~3.0.0
- phact-cmf-modules/files: ~3.0.0
- phact-cmf-modules/mail: ~3.0.0
- phact-cmf-modules/meta: ~3.0.0
- phact-cmf-modules/sitemap: ~3.0.0
- phact-cmf-modules/text: ~3.0.0
- phact-cmf-modules/user: ~3.0.0
- phact-cmf/phact: ^3.0.0
- phpmailer/phpmailer: ~5.2
README
Развернуть проект:
composer create-project phact-cmf/default def --remove-vcs --prefer-dist yarn
Поехали!
Запуск сервера php (тут я буду использовать yarn, но равнозначно можно использовать и npm)
yarn run php-server
Сервер запустится на 8000 порту.
Работа со статикой
Стартуем dev-server от webpack для работы со статикой на лету:
yarn run server
После старта ваш проект откроется в браузере, но уже на 9000 порту.
Всё это работает примерно следующим образом: webpack собирает наши статические файлы и складирует их в оперативную память (а не на диск, наши SSD вздохнут спокойно). Доступ к ним осуществляется как раз через веб-сервер по 9000 порту. Если запрашиваемый файл не найден в сборке - webpack проксирует запрос до backend-сервера (который ожидается на 8000 порту) и мы видим страницы и медиа-файлы. Единственное, что пишется на диск - это manifest.json, по которому phact создает пути до статических файлов.
Procfile
Чтобы не запускать всё это руками (php + webpack dev-server), есть Procfile. Юзаем goreman, foreman или любую другую альтернативу.
Статика модулей
Чтобы выполнить сборку статики в папку для статики модулей (/www/static_modules) выполняем:
php ./www/index.php Base StaticModules
или (если удобнее всё запускать через yarn)
yarn run modules
Как минимум, это необходимо для корректной работы Editor модуля
Билды в production
Собрать статику для фронтенда:
yarn run build
Собрать статику для админки:
yarn run build_admin
Я олдфаг, идите в лес со своим Hot reload / Hot replacement. Я хочу просто watch!
Пожалуйста:
yarn run watch
Ну и для админки:
yarn run watch_admin