blcklab / panulat
A starter API application for Panulat, a modular lightweight PHP framework for clean REST APIs.
Requires
- php: ^8.3
- ext-json: *
- ext-pdo: *
- blcklab/panulat-core: ^0.1
- blcklab/panulat-jwt: ^0.1
Requires (Dev)
- blcklab/panulat-cli: ^0.1
- friendsofphp/php-cs-fixer: ^3.0
- phpstan/phpstan: ^2.0
- phpunit/phpunit: ^11.0
This package is auto-updated.
Last update: 2026-07-07 20:35:24 UTC
README
Panulat is a modular, lightweight PHP framework for building clean REST APIs and API-first applications. It was created to keep API development as simple and focused as possible.
This repository is the Panulat starter project. It gives you a ready-to-use API application structure built on top of:
blcklab/panulat-coreblcklab/panulat-jwtblcklab/panulat-cli
Quick Start
Create a new project:
composer create-project blcklab/panulat my-api
cd my-api
Set up the application:
composer setup
Start the local development server:
composer serve
Open:
http://127.0.0.1:8000
Docker
Start the app and MySQL with Docker:
docker compose up --build
Open:
http://127.0.0.1:8080
The included docker-compose.yml is intended for local development.
Documentation
Start here: docs/getting-started.md
Useful Commands
Create common application files:
php black make:controller UserController php black make:model User php black make:migration create_users_table
Run framework commands:
php black migrate php black db:seed
Run tests and checks:
composer test
composer stan
composer check
Package Architecture
blcklab/panulat-core— framework foundationblcklab/panulat-jwt— optional JWT authenticationblcklab/panulat-cli— optional developer CLIblcklab/panulat— starter API project
Production
For production installs:
composer install --no-dev --optimize-autoloader php bin/console migrate php bin/console optimize
Use safe production environment values:
APP_ENV=production APP_DEBUG=false
Point your web server to:
public/
Do not expose the project root publicly.
License
MIT
