rapira / laravel
Laravel bridge for Rapira: classic, worker and dispatcher modes on top of Laravel Octane
Fund package maintenance!
0.1.1
2026-10-06 18:03 UTC
Requires
- php: >=8.4
- laravel/framework: ^11.0 || ^12.0 || ^13.0
- laravel/octane: ^2.13
- rapira/contract: ^0.9
- symfony/http-foundation: ^7.0 || ^8.0
Requires (Dev)
- llm/skills: ^1.14
- rapira/testing: ^0.1.6
- spiral/code-style: ^2.3
- testo/assert: ^0.1.13
- testo/lifecycle: ^0.1.5
- testo/test: ^0.1.6
- testo/testo: ^0.10.48
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-10-06 18:36:15 UTC
README
rapira/laravel
About
Runs a Laravel application under Rapira in every run mode from one entry script:
- classic — one request per script run, the same lifecycle as Laravel's own
public/index.php. - worker — the application stays resident on Laravel Octane; requests arrive through the superglobals.
- dispatcher — the application stays resident on Laravel Octane; requests arrive as
Rapira\Http\Exchangeunits and responses are written back into them.
Install
composer require rapira/laravel
Usage
The rapira server binary is installed separately: get it from the download page.
Publish the entry script and a starter server config into the project root:
php artisan vendor:publish --tag=rapira
worker.php:
use Rapira\Laravel\Runner; require __DIR__ . '/vendor/autoload.php'; (new Runner(__DIR__))->run();
rapira.toml — pick the mode in [http.pool], the entry script stays the same:
[http] listen = "127.0.0.1:8000" middleware = ["static"] [http.static] root = "public" [http.pool] entrypoint = "worker.php" mode = "dispatcher" # or "worker", "classic"
Start the server:
rapira serve rapira.toml