Analysis updated 2026-05-18
Scan a large Laravel codebase to get a confidence-scored report identifying which parts could become separate services.
Enable runtime tracing in a Laravel app to capture which routes and models run together during real requests.
Generate an OpenAPI stub for a candidate service boundary identified by CarvePHP.
| muhammad-waleed-khalil/carvephp | bera65/frisay | ip1app/hetzner-vps-bot | |
|---|---|---|---|
| Stars | 3 | 3 | 3 |
| Language | PHP | PHP | PHP |
| Setup difficulty | easy | moderate | moderate |
| Complexity | 3/5 | 3/5 | 3/5 |
| Audience | developer | developer | pm founder |
Figures from each repo's GitHub metadata at analysis time.
Requires an existing Laravel project, enable runtime tracing for better boundary detection than static analysis alone.
CarvePHP is a development toolkit for Laravel apps that helps teams figure out how to split up a large monolithic codebase into smaller, independent services. It is installed as a Composer development dependency and adds a set of Artisan commands to your existing Laravel project. The toolkit works in two stages. First, it performs a static scan of your codebase, reading through routes, controllers, models, database migrations, and raw SQL to build a map of how different parts of the code depend on each other. Optionally, you can also enable runtime tracing, which adds a middleware layer that records which parts of the app run together during real HTTP requests and background jobs. CarvePHP then combines both the static and runtime data into a dependency graph. From that graph, the boundary detection step identifies groups of related tables, controllers, and models that cluster naturally together and scores each candidate service by its cohesion and coupling numbers. A sample report entry might say: Billing candidate, 85% confidence, tables: invoices, payments, customers, risk score 22%. The full report is written as a Markdown file you can share with your team. Currently the toolkit handles scanning, analysis, graph-building, boundary detection, and report generation. The parts that still require manual work are actually splitting the database and moving the code. Automatic service generation, one-command extraction, and database splitting are planned for future versions. There are experimental stubs for generating service skeletons, OpenAPI specs, and client SDKs, but these are not ready for production use. The project is at version 0.1.2-alpha and is described as suitable for experimentation and feedback rather than automated production migrations. It requires PHP 8.2 or newer with Laravel 11, 12, or 13. The license is MIT.
A Laravel Composer package that scans a PHP monolith, identifies natural service boundaries using static analysis and runtime tracing, and generates a confidence-scored migration report.
Mainly PHP. The stack also includes PHP, Laravel, Composer.
Use freely for any purpose, including commercial use, as long as you keep the copyright notice.
Setup difficulty is rated easy, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.