GitHub - nunomaduro/laravel-starter-kit: A strict Laravel skeleton - for those who demand meticulous precision in their projects.
Extracto
A strict Laravel skeleton - for those who demand meticulous precision in their projects. - nunomaduro/laravel-starter-kit
Resumen
Resumen Principal
El Laravel Starter Kit se posiciona como una base de proyecto Laravel rigurosa, diseñada para desarrolladores y equipos que exigen una precisión meticulosa y los más altos estándares de calidad en su código. Este esqueleto de aplicación se distingue por su enfoque intransigente en la estrictez y la automatización de la calidad, integrando y pre-configurando un conjunto de herramientas esenciales como PHPStan, Pest, Rector, Pint y Prettier a sus niveles más exigentes. Desde una cobertura del 100% de tipos y código, hasta el nivel máximo de análisis estático con PHPStan y una privatización exhaustiva con Rector, el kit busca eliminar proactivamente la deuda técnica y asegurar la robustez del software desde el inicio. Además de redefinir los valores por defecto de Laravel para un comportamiento más estricto y una estructura de aplicación optimizada, este kit no solo facilita el cumplimiento de las mejores prácticas, sino que las impone a través de un ecosistema de desarrollo coherente y altamente optimizado para la inspección continua del código y las pruebas exhaustivas. Requiriendo PHP 8.4+, es una solución integral para proyectos que buscan longevidad y mantenibilidad.
Elementos Clave
- Integración Profunda de Herramientas de Calidad de Código: El kit viene con PHPStan, Pest, Rector, Pint y Prettier pre-configurados para operar con la máxima estrictez posible. Esto incluye PHPStan al nivel máximo de análisis estático, Pest con garantía de 100% de cobertura de tipos y pruebas unitarias, y Rector con privatización máxima, asegurando un código impecable y un mantenimiento reducido.
- Valores por Defecto Optimizados para la Rigurosidad: Laravel Starter Kit modifica los valores predeterminados de Laravel para fomentar un uso más estricto y seguro. Esto se manifiesta en Modelos Estrictos, el uso de Fechas Inmutables, la imposición de HTTPS, una Consola Segura y el prefetching de assets, lo que contribuye a una aplicación más robusta y menos propensa a errores.
- Suite de Pruebas y Análisis Exhaustiva: El kit proporciona comandos específicos para ejecutar una suite de pruebas completa, incluyendo
composer test:type-coverage
para un 100% de cobertura de tipos,composer test:types
para análisis estático de PHPStan (nivel máximo), ycomposer test:unit
para el
Contenido
Laravel Starter Kit
Laravel Starter Kit is my strict Laravel skeleton - for those who demand meticulous precision in their projects.
Tools like PHPStan, Pest, Rector, Pint, and Prettier are pre-configured to be as strict as possible. E.g: 100% type and code coverage, PHPStan level max, Rector with max privatization, and more...
Requires PHP 8.4+.
Create Project
⚡️ Create your project using Composer:
composer create-project nunomaduro/laravel-starter-kit --prefer-dist example-app cd example-app composer install npm install npm run build cp .env.example .env php artisan key:generate php artisan migrate php artisan serve # serve the application...
Features
🥃 Comes with Laravel Essentials, changes defaults in Laravel for more strict usage:
- Strict Models
- Auto Eager Loading
- Immutable Dates
- Force HTTPS
- Safe Console
- Asset Prefetching
- and more...
🧹 Keep a modern codebase with Pint, Rector, and Prettier:
Every single rule in these tools is customized so they are most strict as possible.
composer lint
composer test:lint # on ci...
🧨 Check type coverage with Pest:
composer test:type-coverage # 100% type coverage...
⚗️ Run static analysis using PHPStan:
composer test:types # level max by default
✅ Run unit tests using PEST
composer test:unit # 100% test coverage...
🚀 Run the entire test suite:
composer test # the entire test suite...
⚙️ Better defaults for testing, including:
- Fake sleeps
- Stray http requests
- Browser testing
- and more...
💭 Different application structure with:
app/Actions
- for application actionsapp/Enums
- for enumerations- and more...
🤖 Agent coding style rules with Laravel Boost, with support for:
- PHPStorm Junie
- Claude AI
- and more...
License
Laravel Starter Kit was created by Nuno Maduro under the MIT license.
Fuente: GitHub