penny / classic-app
Requires
- gianarb/penny: dev-master
- league/plates: ^3.1
- penny/excp-handler: dev-master
Requires (Dev)
- phpunit/phpunit: ~5.0
This package is not auto-updated.
Last update: 2021-03-15 09:16:17 UTC
README
This is a first penny implementation. It integrates league/plates and help you to build an HTML application.
Installation
$ composer create-project penny/classic-app -s dev
$ cd classic-app
$ npm install
$ grunt dev
Note:
bower and grunt require node.js this is only an example of method to manage static asset,
if you don't have familiarity with this tools no problem, you can use assetic,
download all static deps into the public dir or other solutions.
Built-in webserver
$ php -S 127.0.0.1:8080 -t public
it's ready! You can visit 127.0.0.1:8080.
Docker (NGINX/PHP-FPM)
Attention: This is a development environent due to how services are configured. If you want to use it in production you have to: disable error reporting, persist logs, raise limits and fine tune your configurations.
This repository contains a docker-compose.yml.dist
file which currently configures two containers, one
with the NGINX webserver and one with php-fpm. This file must be renamed into docker-compose.yml
and modified
if you need something specific for your system like paths, ip addresses, ports and so on. Remember that the docker-compose.yml file
is ignored since this is very specific to the current installation.
Requirements
- Docker >= 1.6.0
- docker-compose
Create your docker-compose.yml
$ cp docker/docker-compose.yml.development docker-compose.yml
# edit it for your specific needs
$ vi docker-compose.yml
Build
Before starting you have to build penny-classic specific images, to do it issue a:
$ docker-compose build
Up and running
$ docker-compose up -d
Endpoints
IP addresses can be configured in docker-compose.yml
- Application:
http://127.0.0.10
Know how
This skeleton application not resolve ALL your problems and it's not perfect, this is a starting point and implementation example. The penny's target is this! You are free to build your implementation, it made of experience and need.