darkaonline/swagger-lume
Composer 安装命令:
composer require darkaonline/swagger-lume
包简介
OpenApi or Swagger integration to Lumen
README 文档
README
SwaggerLume
Swagger 2.0-3.0 for Lumen
This package is a wrapper of Swagger-php and swagger-ui adapted to work with Lumen.
Installation
| Lumen | Swagger UI | OpenAPI Spec compatibility | L5-Swagger |
|---|---|---|---|
| 5.0 - 5.3 | 2.2 | 1.1, 1.2, 2.0 | composer require "darkaonline/swagger-lume:~1.0" |
| 5.4.x | 2.2 | 1.1, 1.2, 2.0 | composer require "darkaonline/swagger-lume:~2.0" |
| 5.4.x | 3 | 2.0 | composer require "darkaonline/swagger-lume:~3.0" |
| 5.5.x | 3 | 2.0 | composer require "darkaonline/swagger-lume:5.5.*" |
| 5.6 - 5.7 | 3 | 2.0, 3.0 | composer require "darkaonline/swagger-lume:5.6.*" |
| 6.0 | 3 | 2.0, 3.0 | composer require "darkaonline/swagger-lume:6.*" |
| 7.0 | 3 | 2.0, 3.0 | composer require "darkaonline/swagger-lume:7.*" |
| 8.0 | 3 | 2.0, 3.0 | composer require "darkaonline/swagger-lume:8.*" |
| 9.0 | 3 | 2.0, 3.0 | composer require "darkaonline/swagger-lume:9.*" |
| 10.0 | 3 | 2.0, 3.0 | composer require "darkaonline/swagger-lume:10.*" |
- Open your
bootstrap/app.phpfile and:
uncomment this line (around line 26) in Create The Application section:
$app->withFacades();
add this line before Register Container Bindings section:
$app->configure('swagger-lume');
add this line in Register Service Providers section:
$app->register(\SwaggerLume\ServiceProvider::class);
- Run
php artisan swagger-lume:publish-configto publish configs (config/swagger-lume.php) - Make configuration changes if needed
- Run
php artisan swagger-lume:publishto publish everything
Using OpenApi 3.0 Specification
If you would like to use latest OpenApi specifications (originally known as the Swagger Specification) in your project you should:
- Explicitly require
swagger-phpversion 3.* in your projects composer by running:
composer require 'zircote/swagger-php:3.*'
- Set environment variable
SWAGGER_VERSIONto 3.0 in your.envfile:
SWAGGER_VERSION=3.0
or in your config/l5-swagger.php:
'swagger_version' => env('SWAGGER_VERSION', '3.0'),
- Use examples provided here: https://github.com/zircote/swagger-php/tree/3.x/Examples/petstore-3.0
Configuration
- Run
php artisan swagger-lume:publish-configto publish configs (config/swagger-lume.php) - Run
php artisan swagger-lume:publish-viewsto publish views (resources/views/vendor/swagger-lume) - Run
php artisan swagger-lume:publishto publish everything - Run
php artisan swagger-lume:generateto generate docs
Changes in 3.0
- Swagger UI 3.
- Configuration changes.
- Assets dependency dropped. Now includes from composer package.
- See migration from 2.0 to 3.0
Changes in 2.0
- Lumen 5.4 support
- Swagger UI 2.2.8
Migrate from 2.0 to 3.0 or 5.5
- Remove
config/swagger-lume.phpfile (make a copy if needed) - Remove
public/vendor/swagger-lumedirectory - Remove
resources/views/vendor/swagger-lumedirectory - Run
swagger-lume:publishto publish new swagger-ui view and configuration - Edit your
config/swagger-lume.phpfile
Swagger-php
The actual Swagger spec is beyond the scope of this package. All SwaggerLume does is package up swagger-php and swagger-ui in a Laravel-friendly fashion, and tries to make it easy to serve. For info on how to use swagger-php look here. For good examples of swagger-php in action look here.
Important: Make sure that you add the include statement on all pages with annotations!
use OpenApi\Annotations as OA;
Support on Beerpay
Hey dude! Help me out for a couple of 🍻!
darkaonline/swagger-lume 适用场景与选型建议
darkaonline/swagger-lume 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 2.39M 次下载、GitHub Stars 达 332, 最近一次更新时间为 2016 年 01 月 21 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「documentation」 「ui」 「api」 「laravel」 「specification」 「swagger」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 darkaonline/swagger-lume 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 darkaonline/swagger-lume 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 darkaonline/swagger-lume 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Bookdown.io With Bootswatch Styles And Prism Syntax Highlighting
Laravel package that generates RESTful API documentation in Markdown based on PHPDoc.
A PSR-7 compatible library for making CRUD API endpoints
Laravel API documentation generating tool
Alfabank REST API integration
RESTful API server for structured and self-documenting resources over JSON, XML, ...
统计信息
- 总下载量: 2.39M
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 336
- 点击次数: 18
- 依赖项目数: 4
- 推荐数: 1
其他信息
- 授权协议: MIT
- 更新时间: 2016-01-21