kuick / project
There is no license information available for the latest version (v2.8.4.1) of this package.
v2.8.4.1
2026-05-14 14:48 UTC
Requires
- kuick/api-tools: ^1.1
- kuick/framework: ^2.8
Requires (Dev)
- kuick/qa-toolkit: ^2.0
README
A skeleton application built on top of Kuick Framework โ get a working PHP app with routing, console commands, DI, and Docker support in minutes.
Features
- ๐ฆ Ready-to-use project structure with sample controllers and console commands
- ๐ณ Dockerfile with
dev-server,test, and production targets - ๐ Guard-based security (e.g. bearer token for
/api/ops) - ๐งช PHPUnit, PHPStan (level 9), PHPMD, and PSR-12 checks out of the box
Quick Start
Option A โ Composer create-project
composer create-project kuick/project my-app
cd my-app
Option B โ Clone the repository
git clone https://github.com/milejko/kuick-project.git my-app
cd my-app
Start the dev server (Docker + Make)
make up
The app will be available at http://localhost:8080. Source code is mounted as a volume, so changes are reflected immediately โ no rebuild needed.
Manual Docker equivalent:
docker build --target=dev-server --tag=kuick-project . docker run --rm --name kuick-project -v ./:/var/www/html kuick-project composer install docker run --rm --name kuick-project -v ./:/var/www/html -p 8080:80 -e APP_ENV=dev kuick-project
Sample Routes
| Method | Path | Description |
|---|---|---|
| GET | / |
Homepage (Hello World) |
| GET | /hello/{name} |
Greeting with name |
| GET, POST | /ping |
Ping endpoint |
| GET | /api/ops |
OPS/health info (requires bearer token in prod) |
curl http://localhost:8080/ curl http://localhost:8080/hello/John curl http://localhost:8080/ping
Docker Demo (pre-built image)
Pull and run the ready-to-go image from Docker Hub:
docker run -p 8080:80 kuickphp/kuick
Runtime configuration via environment variables
docker run -p 8080:80 \
-e APP_ENV=dev \
-e APP_NAME=ExampleApp \
-e APP_CHARSET=UTF-8 \
-e APP_LOCALE=pl_PL.utf-8 \
-e APP_TIMEZONE="Europe/Warsaw" \
-e APP_LOG_USEMICROSECONDS=1 \
-e APP_LOG_LEVEL=DEBUG \
-e API_SECURITY_OPS_GUARD_TOKEN=secret-token \
kuickphp/kuick:alpine
With API_SECURITY_OPS_GUARD_TOKEN set, you can access the OPS endpoint:
curl -H "Authorization: Bearer secret-token" http://localhost:8080/api/ops
Development & Testing
composer test:all # run all checks (PSR-12, PHPStan, PHPMD, PHPUnit) composer test:phpcs # PSR-12 code style composer test:phpstan # static analysis (level 9) composer test:phpmd # mess detector composer test:phpunit # unit tests with coverage composer fix:phpcbf # auto-fix code style issues make test # run the full CI suite inside Docker