Download the PHP package navjobs/transmit without Composer
On this page you can find all versions of the php package navjobs/transmit. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download navjobs/transmit
More information about navjobs/transmit
Files in navjobs/transmit
Package transmit
Short Description A collection of Laravel api base classes and helpers.
License MIT
Homepage https://kimmel.com
Informations about the package transmit
Communication Layer For Laravel
Transmit was created to expedite the process of implementing REST APIs.
Install
Via Composer:
Register the service provider in your config/app.php:
The package has a publishable config file that allows you to chang the default serializer. To publish:
Api
Transmit provides an abstract controller class that you should extend from:
The controller class provides a number of methods that make API responses easy:
Also provided are a number of error methods. These return an error response as well as setting the status code:
The controller also uses a the QueryHelperTrait that aids with applying query string parameters to Eloquent models and query builder instances:
Transformers
Transmit provides an abstract transformer class that your transformers should extend from:
The transformer allows you to easily determine which relationships should be allowed to be eager loaded. This is determined by matching the requested includes against the available and default includes.
Implementation Example
These methods can be combined to quickly create expressive api controllers. The following is an example of what that implementation might look like:
Usage
This implementation allows endpoints to take includes as well as query string parameters. To apply parameters to the current resource:
Includes are available as follows:
Includes can also be sorted by query parameters, the URL format is:
Fractal
Transmit is built on the back of two amazing PHP packages.
Controllers have an instance of laravel-fractal available through:
Any methods available from laravel-fractal can be accessed directly through this intance. Any unknown methods called on the instance are passed through to the fractal manager class. Please refer to the documentation of these packages for additional functionality.
Testing
Credits
License
The MIT License (MIT). Please see License File for more information.