
rust ez
Rust-EZ is a comprehensive error analysis and correction system for Rust code. It helps developers identify, understand, and fix common Rust errors through static analysis, pattern matching, and automated fixes.
Repository Info
About This Server
Rust-EZ is a comprehensive error analysis and correction system for Rust code. It helps developers identify, understand, and fix common Rust errors through static analysis, pattern matching, and automated fixes.
Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.
Documentation
Rust-EZ: Error Analysis & Correction System
!Rust-EZ Logo
Rust-EZ is a comprehensive error analysis and correction system for Rust code. It helps developers identify, understand, and fix common Rust errors through static analysis, pattern matching, and automated fixes.
Features
- Error Detection: Identify common Rust errors through static analysis
- Error Classification: Categorize errors by type, severity, and root cause
- Automated Fixes: Generate and apply fixes for common errors
- IDE Integration: Seamless integration with various IDEs (VSCode, JetBrains, etc.)
- CLI & TUI Interfaces: Command-line and terminal user interfaces for error analysis
- MCP Server: Model Context Protocol server for integration with other tools
- Extensible Architecture: Modular design for easy extension and customization
Project Structure
The Rust-EZ project is organized into several crates, each with a specific responsibility:
- rust-ez-core: Core types, traits, and utilities used across all crates
- rust-ez-analyzer: Main analyzer for error detection and classification
- rust-ez-parser: Parser for Rust code and compiler error messages
- rust-ez-patterns: Pattern matching for error detection and fix generation
- rust-ez-cli-tui: Command-line and terminal user interfaces
- rust-ez-ide: IDE integration (VSCode, JetBrains, etc.)
- rust-ez-mcp-server: Model Context Protocol server for integration with other tools
Installation
Prerequisites
- Rust 1.70 or higher
- Cargo
From Source
# Clone the repository
git clone https://github.com/arcmoonstudios/rust-ez.git
cd rust-ez/servers/src/rust-ez
# Build the project
cargo build --release
# Install the CLI tool
cargo install --path rust-ez-cli-tui
Using Cargo
# Install the CLI tool
cargo install rust-ez
Usage
Command-Line Interface
# Analyze a Rust file
rust-ez cli --path path/to/file.rs
# Analyze a Rust file and fix errors
rust-ez cli --path path/to/file.rs --fix
# Analyze a directory of Rust files
rust-ez cli --path path/to/directory
# Analyze a specific error message
rust-ez analyze --message "error[E0308]: mismatched types"
Terminal User Interface
# Start the TUI
rust-ez tui
IDE Integration
VSCode
- Install the Rust-EZ extension from the VSCode marketplace
- Open a Rust project
- Rust-EZ will automatically analyze your code and provide suggestions
JetBrains (Coming Soon)
Support for JetBrains IDEs (IntelliJ IDEA, CLion, etc.) is coming soon.
MCP Server
# Start the MCP server
rust-ez-mcp-server
# Configure the server
rust-ez-mcp-server --config path/to/config.json
Development
Building
# Build all crates
cargo build
# Build a specific crate
cargo build -p rust-ez-core
Testing
# Run all tests
cargo test
# Run tests for a specific crate
cargo test -p rust-ez-analyzer
Benchmarking
The project includes benchmarks for various components. To run the benchmarks with Gnuplot visualization:
Prerequisites
-
Ensure Gnuplot is installed (e.g., at
C:\Program Files\gnuplot\bin\gnuplot.exe) -
Add Gnuplot to your system PATH:
Temporary (Current Terminal Session):
# In PowerShell $env:Path += ";C:\Program Files\gnuplot\bin" # Or in Command Prompt (cmd.exe) set PATH=%PATH%;C:\Program Files\gnuplot\binPermanent (Windows):
- Search for "Edit the system environment variables" in the Windows search bar
- Click the "Environment Variables..." button
- In the "System variables" (or "User variables") section, find the Path variable and click "Edit..."
- Click "New" and add:
C:\Program Files\gnuplot\bin - Click "OK" on all dialog boxes
- Close and reopen any terminal for the new PATH to take effect
Running Benchmarks
# Run all benchmarks
cargo bench
# Run a specific benchmark
cargo bench --bench patterns_benchmarks
Using the Plotters backend instead of Gnuplot
# Run benchmarks with the Plotters backend
cargo bench -- --plotting-backend plotters
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Please make sure your code follows the project's coding style and includes appropriate tests.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- The Rust community for their excellent documentation and tools
- All contributors who have helped make this project better
Contact
- Project Lead: Lord Xyn - LordXyn@proton.me
- GitHub: https://github.com/arcmoonstudios/rust-ez
rust-ez
Quick Start
Clone the repository
git clone https://github.com/arcmoonstudios/rust-ezInstall dependencies
cd rust-ez
npm installFollow the documentation
Check the repository's README.md file for specific installation and usage instructions.
Repository Details
Recommended MCP Servers
Discord MCP
Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.
Knit MCP
Connect AI agents to 200+ SaaS applications and automate workflows.
Apify MCP Server
Deploy and interact with Apify actors for web scraping and data extraction.
BrowserStack MCP
BrowserStack MCP Server for automated testing across multiple browsers.
Zapier MCP
A Zapier server that provides automation capabilities for various apps.