- Is ppi/skeleton-app a Laravel package?
- No. ppi/skeleton-app is a Composer project skeleton for the PPI PHP framework, not a Laravel package. It is meant to be forked or created as a standalone project via composer create-project, and it does not integrate with Laravel's service container, routing, or Eloquent ORM. Laravel developers should use laravel/laravel or a Laravel starter kit instead.
- Can I install ppi/skeleton-app into an existing Laravel app with Composer?
- No practical path exists. It is a create-project skeleton, not a library, and its Composer 1-era dependency graph targets abandoned zendframework/* and Symfony 2 packages that conflict with modern Laravel dependencies. Even if resolution succeeded, there is no Laravel service provider or package auto-discovery. Treat it as a separate legacy application, not a dependency.
- How do I install ppi/skeleton-app?
- The supported entry point is composer create-project ppi/skeleton-app, which was designed for Composer 1 and PHP 5.6 or 7.0. On modern PHP 8.x and Composer 2, dependency resolution will likely fail because zendframework/* packages are abandoned or renamed. Reproducing the original build requires pinning Composer 1, an old PHP base image, and a committed lockfile or vendor directory.
- What PHP version does ppi/skeleton-app require?
- It targets PHP 5.6 and 7.0, the era of its last release in February 2016. Those PHP versions are end-of-life and receive no security patches. There is no supported PHP 8.x compatibility, so running it on a current PHP runtime is unsupported and likely to break.
- Is ppi/skeleton-app compatible with Composer 2?
- Likely not. Its dependency graph was resolved with Composer 1 and references abandoned zendframework/* packages that were later renamed to laminas/*. Composer 2 is stricter and will probably fail to resolve the original constraints. A reproducible build usually requires Composer 1 plus a frozen composer.lock and vendor directory.
- Is ppi/skeleton-app still maintained?
- No. The last release was on 2016-02-16, and the project has no dependents or active maintenance community. Any defect or security issue you encounter is yours to fix. It is best treated as a historical reference implementation rather than a maintained dependency.
- What components does ppi/skeleton-app include?
- It wires together Zend Framework 2 components, Symfony 2 components, Doctrine ORM, Twig, and Assetic through a ZF2-style module system. That full-stack combination is the point of the skeleton, so there is no partial adoption path. All of those major components are end-of-life and lack a modern security response path.
- How do I run or test ppi/skeleton-app?
- You need a pinned legacy environment, typically PHP 5.6 or 7.0 with Composer 1 and a committed vendor directory or private mirror. The original test suite and tooling reflect 2016-era PHPUnit and Assetic asset pipelines, so modern CI images will not work out of the box. Build it in a container and prove reproducibility before relying on it.
- What are alternatives to ppi/skeleton-app for a Laravel project?
- For Laravel, use laravel/laravel, Laravel Jetstream, or Laravel Breeze as your starting skeleton. If you want a modular PHP structure to study, look at modern Laminas, Symfony 6+, or Laravel package skeletons rather than a 2016 PPI template. There is no reason to adopt ppi/skeleton-app in a new Laravel codebase.
- Can I use ppi/skeleton-app in production?
- Not recommended for anything customer-facing. PHP 5.6/7.0, Zend Framework 2, and Symfony 2 are all end-of-life with no security patch path, and the single-maintainer project has been inactive since 2016. If an existing PPI deployment must stay alive, freeze it as a pinned container image with a committed vendor directory and start a strangler migration in parallel.