Download the PHP package rougin/weasley without Composer
On this page you can find all versions of the php package rougin/weasley. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package weasley
Weasley
Weasley
is a PHP package that provides generators, helpers, and utility classes for the Slytherin. Its goal is to improve the overall productivity when writing web applications based on Slytherin
by reducing in writing code related to CRUD operations.
Installation
Install the Weasley
package via Composer:
Once installed, kindly see the following features below provided by Weasley
:
Code generators
Weasley
provides commands that generates code based on the specified type (e.g., Check
, Route
, etc.). These commands allow Slytherin
to be a rapid prototyping tool in creating web-based applications.
To access the list of available commands, kindly run its namesake command from the terminal:
make:check
Creates a new check (validation) class based on Valitron.
make:handler
Creates a new HTTP Middleware class.
make:package
Creates a new Slytherin Integration class.
make:route
Creates a new HTTP route class.
HTTP routes
In creating web applications, Weasley
also provides PHP classes to create HTTP routes based on the RESTful style.
[!NOTE] In other PHP frameworks, this is also known as
Controllers
.
HttpRoute
A simple HTTP route class for RESTful APIs.
JsonRoute
Similar with HttpRoute
but the response will be returned in JSON format.
Third-party packages
To conform with the usage of IntegrationInterface
from Slytherin
, Weasley
also provides the following third-party integrations with other PHP packages:
Laravel\Eloquent
This package enables the usage of Eloquent to Slytherin
which is an Object-relational mapper (ORM) from Laravel. To use this package, kindly install its required package first in Composer
:
Laravel\Blade
Laravel\Blade
allows Slytherin
to use Blade from Laravel
for creating PHP templates using the Blade
templating engine. Use the command below to install the specified package from Composer
:
Laravel\Paginate
This is a simple third-party package that allows Eloquent
to generate pagination links based on its models. Kindly use the command below to install this third-party package:
Session
Weasley
also provides a simple implementation of the SessionHandlerInterface.
HTTP handlers
Weasley
has the following HTTP middlewares (HTTP handlers in this case) to improve the handling of HTTP requests and its respective responses:
AllowCrossOrigin
Adds additional headers for Cross-origin resource sharing (CORS).
EmptyStringToNull
Converts the empty strings from request as null
.
JsonContentType
Changes content response to application/json
.
MutateRequest
A middleware that can be extended to mutate/transform values from the request.
SpoofHttpMethod
Replaces the HTTP verb from _method
value.
TrimStringValue
Trims the strings from an incoming request.
Mutators
Provided by Weasley
, mutators are classes that mutates (transforms) to a specified result (e.g., PSR-07 responses, API data, etc.):
JsonMutator
Mutates a PSR-07
response in JSON format.
RestMutator
Mutates a response created from the Laravel/Paginate
package based on Paypal's API Style Guide.
Validation
Weasley
also provides a simple validation class on top of Valitron using the Check
class:
Once created, the data can be submitted to the said class for validation:
Testing
If there is a need to check the source code of Weasley
for development purposes (e.g., creating fixes, new features, etc.), kindly clone this repository first to a local machine:
After cloning, use Composer
to install its required packages:
[!NOTE] Please see also the build.yml of
Weasley
to check any packages that needs to be installed based on the PHP version.
Once the required packages were installed, kindly check the following below on how to maintain the code quality and styling guide when interacting the source code of Weasley
:
Unit tests
Weasley
also contains unit tests that were written in PHPUnit:
When creating fixes or implementing new features, it is recommended to run the above command to always check if the updated code introduces errors during development.
Code quality
To retain the code quality of Weasley
, a static code analysis code tool named PHPStan is being used during development. To start, kindly install the specified package in the global environment of Composer
:
Once installed, PHPStan
can now be run using its namesake command:
[!NOTE] When running
phpstan
, it will use thephpstan.neon
file which is already provided byWeasley
.
Coding style
Aside from code quality, Weasley
also uses a tool named PHP Coding Standards Fixer for maintaining an opinionated style guide. To use this tooling, it needs also to be installed in the Composer
's global environment first:
After its installation, kindly use the php-cs-fixer
command in the same Weasley
directory:
The phpstyle.php
file provided by Weasley
currently follows the PSR-12 standard as its baseline for the coding style and uses Allman as its indentation style.
[!NOTE] Installing both
PHPStan
andPHP Coding Standards Fixer
requires a minimum version of PHP at least7.4
.
Changelog
Please see CHANGELOG for more information what has changed recently.
License
The MIT License (MIT). Please see LICENSE for more information.
All versions of weasley with dependencies
rougin/slytherin Version ~0.9
symfony/console Version ~2.8|~3.0|~4.0|~5.0|~6.0
vlucas/valitron Version ~1.4