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.
{
"require": {
"scrumptious\slagger": "0.3.0"
}
}
$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.
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.
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 {
// ...
}