A lightweight, high-performance PHP framework built on modern architecture patterns. It is specifically designed for microservices architecture and high-concurrency environments using native OpenSwoole.
- Modern Architecture: Built on contemporary modern PHP standards, optimized for clean, scalable microservices integration.
- Production-Ready Performance: Native OpenSwoole support ensures asynchronous, non-blocking execution capable of handling high-concurrency and heavy traffic loads.
- Developer Experience: Comes pre-packaged with built-in benchmarking tools, native Pest testing integration, and easy Docker services.
Before setting up the framework, ensure your local machine meets the minimum runtime, infrastructure, and network requirements detailed below.
- PHP 8.3+ (Must include
redis,ffiandopenswooleextensions enabled in yourphp.ini). - OpenSwoole 22.x+ (Required for running high-concurrency HTTP/WebSocket servers).
- Docker Desktop (Required if you choose to spin up infrastructure dependencies via containers. Compatible with macOS, Windows, and Linux).
You can install these directly on your host machine or run them instantly via the provided Docker containers:
- Primary Relational Database: MySQL 8.0+ or SQLite 3.x (Used for relational data storage and user migrations).
- Redis Server: Redis CLI / Server 7.x+ (Handles rapid caching, session storage, and pub/sub routines).
- RabbitMQ: RabbitMQ 3.12+ (Acts as the robust enterprise message broker for processing background microservices jobs).
- Mailpit: (SMTP testing sandbox to capture and view outgoing emails locally without hitting real servers).
The framework boots up multiple isolated server instances simultaneously. Ensure the following network ports are vacant and not bound by other native services (like native Apache, Nginx, or local MySQL instances):
| Service Node | Default Port | Protocol | Purpose / Target Destination |
|---|---|---|---|
| Web Application | 8009 |
HTTP | Local web asset rendering and user frontend router |
| API Router | 8080 |
HTTP | Asynchronous API router and long-lived HTTP traffic handler |
| WebSocket Engine | 9501 |
WebSocket | Socket connections and long-lived HTTP traffic handler |
| Socket Engine | 9502 |
TCP / HTTP | Live streaming bidirectional socket connections and relays |
💡 Troubleshooting Tip: If you get a
Bind address already in useerror when starting up the servers, runlsof -i :<port>(macOS/Linux) ornetstat -ano | findstr <port>(Windows) to identify and stop the blocking application.
Follow these steps to get your local environment up and running smoothly.
Clone the repository, download the vendor packages, and initialize your environment configurations:
# Install PHP package dependencies
composer install
# Create your local environment file
cp .env.example .envImport the schema files into your MySQL or SQLite database instance:
- Schema Definition: Execute the SQL file found at
storage/database/migrations/mysql/user.sqlto create theuserstable. - Seed Sample Data: Execute the SQL file found at
storage/database/seeders/mysql/insert_user.sqlto populate initial test users.
Start the supporting backend infrastructure using Docker Compose. Use the -f flag to point to the specific configuration files:
# Start Redis (Caching & Session Management)
docker compose -f docker-compose/redis/docker-compose.yaml up -d
# Start RabbitMQ (Message Broker & Queueing)
docker compose -f docker-compose/rabbitmq-python/docker-compose.yaml up -d
# Start Mailpit (Local Email Testing Sandbox)
docker compose -f docker-compose/mailpit/docker-compose.yml up -d
# Start the Web Dashboard Core Service Monitoring (Prometheus & Grafana)
docker compose -f docker-compose/dashboard/docker-compose.yml up -dNote: Remove the -d flag if you prefer to watch the streaming logs directly in your terminal window.
Choose one of the execution methods below to launch your web interface:
php -S localhost:8008 -t public/Open multiple terminal windows or run them concurrently:
# Start the Web Frontend Engine
php servers/web-server.php
# Start the REST API Engine
php servers/api-server.php
# Start the Cronjob with PHP (Strean Server)
php servers/phpstream-server.php
# Web Socket (Coming Soon)
php servers/http-server.phpThe framework features an interactive CLI console application to interact with system components.
# Simulates message listener triggers for a specific user ID
php bin/console app:testing <userid>
# Displays detailed system environment metadata filtered by user ID
php bin/console app:info <userid>
# Complete automatic framework setup initializer (Feature In Progress)
php bin/console app:setup# Generates local Self-Signed SSL/TLS certificates for HTTPS development
bin/mkcert
# Runs automated stress tests and benchmarks on OpenSwoole endpoints
php bin/benchmark
# Executes unit and feature tests using the Pest Framework suite
php bin/pest
# Advanced binary extensions to accelerate engine speed (Coming Soon)
bin/ffi/*All internal application logs are captured as flat streams separated by level under storage/logs/:
- 🛑 Critical Exceptions:
storage/logs/app_error.log - 🪲 Verbose Debug Variables:
storage/logs/app_debug.log - ℹ️ General Information Audit:
storage/logs/app_info.log
- For explicit feature testing scripts and API usage endpoints, see DEMO.txt.
- For structural pipelines, framework architectural notes, and guidelines, see DEV.txt.
⚠️ Development Status Warning
This framework is currently under active development. Production rollouts require additional code hardening, custom firewall parameters, and strict production-level environment settings.


