Download the PHP package yangweijie/think-scramble without Composer
On this page you can find all versions of the php package yangweijie/think-scramble. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download yangweijie/think-scramble
More information about yangweijie/think-scramble
Files in yangweijie/think-scramble
Package think-scramble
Short Description ThinkPHP 框架的 OpenAPI 文档自动生成扩展包
License MIT
Informations about the package think-scramble
ThinkScramble
ThinkScramble 是一个为 ThinkPHP 6/8 框架设计的自动 API 文档生成扩展包,移植自 Laravel Scramble。它能够自动分析你的控制器代码,无需手动编写 PHPDoc 注解,即可生成符合 OpenAPI 3.0 规范的 API 文档。
✨ 特性
- 🚀 零配置启动 - 安装即用,无需复杂配置
- 📝 自动文档生成 - 无需手动编写 PHPDoc 注解
- 🎯 ThinkPHP 原生支持 - 完全适配 ThinkPHP 8.0 架构
- 📊 OpenAPI 3.0 标准 - 生成标准的 OpenAPI 文档
- 🎨 现代化 UI - 支持 Swagger UI 和 Stoplight Elements 双重界面
- ⚡ 高性能缓存 - 智能缓存机制,支持增量解析
- 🔒 访问控制 - 灵活的文档访问权限控制
- 📤 多格式导出 - 支持 15 种导出格式,覆盖主流 API 管理平台
- 🛠️ 命令行工具 - 丰富的 CLI 命令支持
- 🔍 类型推断 - 智能的 PHP 类型分析引擎
📋 系统要求
- PHP >= 8.1
- ThinkPHP >= 8.0
- Composer
🚀 安装
PIE 安装(推荐)
使用 PIE (PHP Installer for Extensions) 安装,享受现代化的包管理体验:
Composer 安装
使用 Composer 安装扩展包:
PHAR 安装
下载预构建的 PHAR 文件:
自动发现
ThinkPHP 8.0 支持自动服务发现,安装后会自动注册服务。如果需要手动注册,请在 config/service.php 中添加:
🚀 快速开始
1. 创建 API 控制器
2. 配置路由
3. 生成文档
4. 访问文档
启动开发服务器并访问文档:
访问以下地址查看生成的 API 文档:
📱 Web 界面
- 默认界面:
http://localhost:8000/docs/(自动选择最佳渲染器) - Stoplight Elements:
http://localhost:8000/docs/elements(现代化界面,推荐) - Swagger UI:
http://localhost:8000/docs/swagger(经典界面)
📄 API 规范文件
- JSON 格式:
http://localhost:8000/docs/api.json - YAML 格式:
http://localhost:8000/docs/api.yaml
🔧 管理接口
- 渲染器状态:
http://localhost:8000/docs/renderers
✅ 功能状态
已完成功能
- ✅ 命令行工具 - 完整的文档生成和导出命令
- ✅ 现代化 UI - 支持 Swagger UI 和 Stoplight Elements 双重界面
- ✅ 多格式支持 - 15 种导出格式,覆盖主流 API 管理平台和测试工具
- ✅ YAML 导出 - 内置 YAML 生成器,无需额外扩展
- ✅ 自动路由检测 - 智能分析 ThinkPHP 路由
- ✅ 资源管理 - 自动发布和管理静态资源文件
- ✅ 配置系统 - 灵活的配置选项
- ✅ 缓存支持 - 提高文档生成性能
- ✅ 错误处理 - 完善的异常处理机制
已完成功能
- ✅ 文件上传支持 - 自动识别和文档化文件上传参数
- ✅ 注解支持 - 完整的 think-annotation 兼容性
- ✅ 验证器集成 - 自动提取验证规则生成 OpenAPI 参数
- ✅ 模型分析 - 自动分析数据模型生成 Schema
- ✅ 中间件分析 - 安全方案自动检测和生成
高级功能
- ✅ 缓存优化 - 智能缓存机制提升分析性能
- ✅ 性能监控 - 文档生成性能分析和优化
- ✅ 插件系统 - 可扩展的插件架构支持自定义扩展
- ✅ CLI 工具 - 命令行文档生成工具
- ✅ 实时更新 - 代码变更时自动更新文档
- ✅ 多格式导出 - 支持 Postman、Insomnia 等格式导出
⚙️ 配置
基本配置
ThinkScramble 使用内置的默认配置,开箱即用。如需自定义配置,可以创建 config/scramble.php 文件:
📖 命令行工具
生成文档
导出文档
ThinkScramble 支持 15 种不同的导出格式,覆盖主流 API 管理平台、测试工具和文档系统:
标准格式
API 管理平台
测试工具
文档和服务
指定输出路径
📤 导出格式详解
ThinkScramble 支持 15 种不同的导出格式,满足各种使用场景:
🎯 使用场景对照表
| 使用场景 | 推荐格式 | 说明 |
|---|---|---|
| 开发阶段 | JSON, YAML, HTML | 标准格式,版本控制友好 |
| API 测试 | Postman, Insomnia, ApiPost | 功能测试和调试 |
| 性能测试 | JMeter, HAR | 负载测试和网络分析 |
| 团队协作 | Eolink, YApi, RAP, ApiFox | 企业级 API 管理 |
| 文档发布 | HTML, ApiDoc, ShowDoc | 对外文档展示 |
| 企业集成 | WSDL, JSON | SOA 架构和系统集成 |
📋 格式特性对比
| 格式 | 文件类型 | 特点 | 适用工具/平台 |
|---|---|---|---|
| JSON | .json | OpenAPI 标准,通用性强 | 各种 API 工具 |
| YAML | .yaml | 人类可读,配置友好 | 文档编写,CI/CD |
| HTML | .html | 可视化,交互式文档 | 浏览器查看 |
| Postman | .json | 支持测试脚本和环境变量 | Postman 客户端 |
| Insomnia | .json | 现代化界面,插件丰富 | Insomnia 客户端 |
| Eolink | .json | 企业级 API 管理 | Eolink 平台 |
| JMeter | .jmx | 性能测试,负载测试 | Apache JMeter |
| YApi | .json | 接口管理,Mock 数据 | YApi 平台 |
| ApiDoc | .json | 静态文档生成 | ApiDoc 工具 |
| ApiPost | .json | 国产工具,中文友好 | ApiPost 客户端 |
| ApiFox | .json | 设计优先,协作开发 | ApiFox 平台 |
| HAR | .har | 网络请求记录分析 | 浏览器开发者工具 |
| RAP | .json | 阿里开源,Mock 支持 | RAP 平台 |
| WSDL | .wsdl | SOAP 服务描述 | 企业 SOA 架构 |
| ShowDoc | .json | 简单易用,快速部署 | ShowDoc 平台 |
🚀 批量导出示例
🌟 特色功能
自动类型推断
ThinkScramble 能够自动分析您的代码并推断参数类型和响应格式:
🔄 文件上传支持
支持多种文件上传注释格式和自动代码分析:
🏷️ 注解支持
完整支持 think-annotation 的所有注解类型:
🏗️ 模型分析
自动分析 ThinkPHP 模型,生成精确的 OpenAPI Schema:
🛡️ 中间件分析
自动分析中间件配置,生成 OpenAPI 安全方案:
支持验证器
🧪 测试
运行测试套件:
📚 文档
📖 在线文档站点
访问我们的完整在线文档站点,享受更好的阅读体验:
🌐 https://yangweijie.github.io/think-scramble/
🚀 快速链接
📁 本地文档
核心文档
- 📦 安装指南 - 详细的安装步骤和系统要求
- ⚙️ 配置说明 - 完整的配置选项参考
- 📖 使用教程 - 从入门到高级的使用指南
- 🔧 API 参考 - 完整的 API 和类参考
- 🚨 故障排除 - 常见问题和解决方案
功能文档
- 📤 导出格式指南 - 15 种导出格式详细说明
- 🎨 文档渲染器 - Stoplight Elements 使用指南
- 📝 YAML 导出修复 - YAML 导出功能说明
更新日志
- 🔄 Stoplight Elements 集成
- 📤 导出格式扩展
🤝 贡献
欢迎贡献代码!请查看 贡献指南 了解详细信息。
开发环境设置
贡献
欢迎提交 Issue 和 Pull Request!
许可证
MIT License. 详见 LICENSE 文件。
致谢
本项目移植自 dedoc/scramble,感谢原作者的优秀工作。
All versions of think-scramble with dependencies
topthink/framework Version ^6.0|^8.0
nikic/php-parser Version ^4.15
cebe/php-openapi Version ^1.7