Slytherin es un micro-marco de PHP simple y extensible que intenta lograr un diseño basado en sólidos para crear aplicaciones web. Utiliza el compositor como administrador de paquetes de dependencia para agregar, actualizar o incluso eliminar paquetes externos.
En el estado actual del ecosistema PHP, los marcos PHP utilizados principalmente como Symfony y Laravel proporcionan un gran conjunto de herramientas para cada ingeniero de software de PHP. Si bien dichos marcos de PHP proporcionan una solución de disipación de cocina para cada necesidad (por ejemplo, sistema de gestión de contenido (CMS), crud, etc.), a veces son excesivos, abrumadoras al principio o a veces usan una estructura de directorio estricta.
Con esto, Slytherin intenta un enfoque alternativo para solo requerir las herramientas básicas como HTTP y el enrutamiento y dejar que la aplicación evolucione de una herramienta API simple a una aplicación web con todas las funciones. Sin una estructura de directorio definida, Slytherin se puede usar para mezclar y hacer coincidir cualquier estructura en función de los requisitos de la aplicación y alentar el uso de paquetes de código abierto en el ecosistema PHP.
A continuación se muestra un código de ejemplo para crear una aplicación simple usando Slytherin:
// app/web/index.php
use Rougin Slytherin Application ;
// Load the Composer autoloader ----
$ root = dirname ( dirname ( __DIR__ ));
require " $ root /vendor/autoload.php " ;
// ---------------------------------
// Create a new application instance ---
$ app = new Application ;
// -------------------------------------
// Create a new HTTP route ---
$ app -> get ( ' / ' , function ()
{
return ' Hello world! ' ;
});
// ---------------------------
// Then run the application after ---
echo $ app -> run ();
// ----------------------------------Verifique amablemente la primera página "Hello World" en el wiki para obtener más información en el código de muestra proporcionado anterior.
A medida que Slytherin está evolucionando como un micro-marco, puede haber algunos cambios de ruptura en su código interno durante el desarrollo. Dichos cambios se pueden encontrar en la página Guía de actualización.
Consulte ChangeLog para obtener más información lo que ha cambiado recientemente.
Para verificar todos los casos de prueba escritos, instale primero los paquetes de terceros especificados:
$ composer request filp/whoops --dev
$ composer request league/container --dev
$ composer request nikic/fast-route --dev
$ composer request phroute/phroute --dev
$ composer request rdlowrey/auryn --dev
$ composer request twig/twig --dev
$ composer request zendframework/zend-diactoros --dev
$ composer request zendframework/zend-stratigility --dev
$ composer test Slytherin está inspirado en los siguientes paquetes a continuación y sus respectivas implementaciones. Sus contribuciones mejoraron mi comprensión de la escritura de marcos y la creación de la lógica de aplicaciones desde cero:
La licencia MIT (MIT). Consulte la licencia para obtener más información.