scrumptious / slagger
Slim middleware for generating Swagger json for use with Swagger UI
Installs: 1 219
Dependents: 0
Suggesters: 0
Security: 0
Stars: 10
Watchers: 2
Forks: 4
Open Issues: 0
Requires
- php: >=5.4.0
- slim/slim: 2.*
- zircote/swagger-php: 0.9.5
This package is not auto-updated.
Last update: 2024-12-21 13:11:19 UTC
README
A Slim PHP middleware for generating swagger json for use with Swagger UI. This middleware will automatically add swagger json endpoints for all your Swagger doc annotated classes. Uses Zircote Swagger-php to parse annotations.
Install Using Composer
{
"require": {
"scrumptious\slagger": "0.3.0"
}
}
Usage
$app = new \Slim\Slim(); // Inject as Slim application middleware $app->add(new \Slagger\Slagger('/api/v1/docs', __DIR__.'/../lib')); \\ ... your app code $app->run();
You'd then input the url http://yourapidomain.com/api/v1/docs
in the Swagger-UI interface.
Slagger(docsuri, scandir, options)
The constructor takes up to three arguments.
####docsuri The uri in your app that will return swagger json.
####scandir The directory to scan for files with Swagger annotations.
####options [optional] Options passed through to the getResource function of the Zircote swagger-php library.
Annotations
The Zircote Swagger-php library will parse the Swagger annotations in your files. See the Swagger-php docs for what annotations are supported.
ex:
/** * @SWG\Resource( * apiVersion="0.1", * swaggerVersion="1.2", * resourcePath="/journey", * basePath="http://myapi.com/api/v1" * ) */ class Journey extends CRUD { // ... }