The Seam Problem
CarvePHP is a static analysis package published to Packagist in June 2026. It does one thing: finds service boundaries inside a Laravel monolith — the architectural seams where one functional domain ends and another begins. One Hacker News submission, one product launch. That is not a trend. What it is, is one artifact illuminating a structural reality: within PHP's dominant full-stack framework, the problem of understanding internal domain boundaries before exposing them as machine-consumable APIs has become specific enough that developers are building framework-targeted tooling for it.
Static analysis tools for PHP architectural boundary detection are not new. Deptrac, maintained by Qossmic, has offered layer and dependency boundary checking since approximately 2017. PHPStan and Psalm have provided architectural constraint analysis for years; the Spatie organization and the Laracasts community have addressed Laravel modularization in depth across conference talks, open-source packages, and published documentation. What CarvePHP represents is specificity within a maturing category — a Laravel-opinionated approach targeting the framework's particular conventions rather than generic PHP codebases.
Why Machine Consumption Changes the Calculation
Server-rendered HTML was the correct output format when the consumer was a human with a browser. That assumption is eroding. AI agents, LLM-powered orchestration pipelines, and automated integration clients consume structured data via API — not rendered markup. A Laravel monolith whose domain boundaries are opaque cannot easily expose clean, scoped API endpoints without first understanding where those domains are. The service boundary becomes infrastructure, not merely a refactoring concern.
CarvePHP's approach is static analysis: it reads the codebase to infer module independence without altering a line of production code. Its existence alongside Deptrac and related tools signals that the understanding problem — knowing what is inside the monolith before deciding how to expose it — is generating sustained developer attention across multiple tools and maintainers, not a single moment of recognition.
Separating PHP Scale from Laravel Scale
PHP powers approximately 77% of measured websites by server-side language — among sites where server-side language is detectable. W3Techs' own methodology excludes sites where server-side language cannot be identified, and CDN-fronted or heavily obfuscated deployments are systematically under-represented in that figure. More critically for this analysis, that headline share is dominated by WordPress (which W3Techs attributes to approximately 43% of all websites globally), Joomla, Drupal, and other CMS platforms. Service boundary carving is architecturally irrelevant to CMS deployments — the monolith-splitting problem does not apply to a publishing system managing posts and pages. The 77% figure establishes PHP's reach; it does not establish a Laravel-specific problem of equivalent scope.
Within PHP framework deployments specifically — excluding CMS platforms — Laravel is the dominant choice for full-stack application development. Its core package (laravel/framework) has accumulated more than 600 million total installs on Packagist. That figure requires context: Packagist counts every composer install and composer update execution, including CI/CD pipeline runs, making total installs a proxy for ecosystem activity and pipeline intensity rather than a count of discrete production deployments. A more structural signal of scale is the dependency graph: laravel/framework is listed as a direct dependency by tens of thousands of Packagist packages, reflecting the breadth of the ecosystem built on top of it.
The Signal, Not the Trend
CarvePHP is a single package by a single developer. Treating it as evidence of a PHP ecosystem migration wave would be a category error. What it represents, alongside the longer history of Deptrac and PHPStan-based architectural enforcement, is a gap being addressed progressively: the gap between what Laravel's architecture was optimized for — fast, cohesive, server-rendered delivery — and what an AI-first distribution model demands: bounded, independently consumable, machine-legible services. The structural reality carries the argument; the product launch is one data point within it.
That gap will not be closed by tooling alone. Service boundary mapping is a prerequisite for informed migration decisions, not a migration in itself. Organizations operating mature Laravel codebases now have a deepening toolkit of diagnostic options — from Deptrac's layer enforcement to framework-specific boundary detection. Whether the diagnosis leads to action depends on factors download counts do not measure: team capacity, technical debt estimates, and how urgently downstream consumers require structured API surfaces.
The pattern — tooling to understand a codebase precedes tooling to change it — is consistent with the lifecycle stage of any large installed base. Its depth in the Laravel ecosystem reflects where the framework's most mature deployments now sit: production systems with established data models and integration requirements that will need to evolve as operators' technology stacks shift toward machine-readable interfaces.


