carthage-software/mago
GitHub: carthage-software/mago
基于 Rust 构建的一体化 PHP 工具链,整合 linting、格式化和静态分析,为 PHP 项目带来极致性能和开发体验。
Stars: 2903 | Forks: 131
**一个极快的 PHP linter、格式化工具和静态分析器,使用 Rust 编写。**
[](https://github.com/carthage-software/mago/actions/workflows/ci.yml)
[](https://github.com/carthage-software/mago/actions/workflows/cd.yml)
[](https://github.com/carthage-software/mago/actions/workflows/github-code-scanning/codeql)
[](https://crates.io/crates/mago)
[](https://packagist.org/packages/carthage-software/mago)
[](https://packagist.org/packages/carthage-software/mago)
[](https://github.com/carthage-software/mago/blob/main/LICENSE-MIT)
**Mago** 是一个全面的 PHP 工具链,旨在帮助开发者编写更好的代码。受 Rust 生态系统启发,Mago 为各种规模的 PHP 项目带来了速度、可靠性和卓越的开发者体验。
## 目录
- [安装](#installation)
- [快速开始](#getting-started)
- [功能特性](#features)
- [我们的赞助商](#our-sponsors)
- [贡献](#contributing)
- [灵感与致谢](#inspiration--acknowledgements)
- [许可证](#license)
## 安装
在 macOS 和 Linux 上安装 Mago 最常用的方法是使用我们的 shell 脚本:
```
curl --proto '=https' --tlsv1.2 -sSf https://carthage.software/mago.sh | bash
```
安装特定版本:
```
curl --proto '=https' --tlsv1.2 -sSf https://carthage.software/mago.sh | bash -s -- --version=1.13.3
```
有关所有其他安装方法,包括 Homebrew、Composer 和 Cargo,请参阅我们的官方 **[安装指南](https://mago.carthage.software/guide/installation)**。
## 快速开始
要开始使用 Mago 并学习如何配置您的项目,请访问官方文档中的 **[快速开始指南](https://mago.carthage.software/guide/getting-started)**。
## 功能特性
- ⚡️ 极速:使用 Rust 构建,以实现最佳性能。
- 🔍 Lint:通过可自定义的规则识别代码库中的问题。
- 🔬 静态分析:对代码库进行深度分析,以捕获潜在的类型错误和 Bug。
- 🛠️ 自动修复:自动应用修复程序解决许多 Lint 问题。
- 📜 格式化:自动格式化您的代码,以符合最佳实践和风格指南。
- 🧠 语义检查:通过强大的语义分析确保代码正确性。
- 🌳 AST 可视化:通过抽象语法树 (AST) 解析探索您的代码结构。
## 灵感与致谢
Mago 站在巨人的肩膀上。我们的设计和功能深受 Rust 和 PHP 生态系统中先驱工具的启发。
### 灵感来源:
- [Clippy](https://github.com/rust-lang/rust-clippy):因其全面的 Lint 方法。
- [OXC](https://github.com/oxc-project/oxc/):在 Rust 中构建高性能工具链的主要灵感来源。
- [Hakana](https://github.com/slackhq/hakana/):因其深度的静态分析能力。
### 致谢:
我们深深尊重 [PHP-CS-Fixer](https://github.com/PHP-CS-Fixer/PHP-CS-Fixer)、[Psalm](https://github.com/vimeo/psalm)、[PHPStan](https://github.com/phpstan/phpstan) 和 [PHP_CodeSniffer](https://github.com/PHPCSStandards/PHP_CodeSniffer) 等工具的基础性工作。虽然 Mago 旨在提供统一且更快的替代方案,但这些工具为现代 PHP 开发铺平了道路。
## 许可证
Mago 采用双重许可,您可以选择以下任一许可证:
- MIT 许可证 ([LICENSE-MIT](./LICENSE-MIT))
- Apache 许可证,版本 2.0 ([LICENSE-APACHE](./LICENSE-APACHE))标签:Formatter, Linter, OpenVAS, PHP, pptx, Rust, Rust编写, 代码格式化, 代码静态分析, 可视化界面, 威胁情报, 开发工具链, 开发者工具, 开源框架, 性能优化, 持续集成, 检测绕过, 源码分析, 网络流量审计, 通知系统, 通知系统, 静态检测