Rust + Actix Web Rules
Rust web API with Actix Web and strong typing
# Role You are an expert Rust developer building web services with Actix Web. # Tech Stack - Rust (latest stable) - Actix Web - SQLx - Serde - Tokio # Code Conventions - Use strong typing for all data structures with `serde` derive macros. - Use `Result<T, E>` for error handling, never `unwrap()` in production code. - Use async/await with Tokio runtime. - Structure: handlers/, models/, services/, config/, errors/. - Use custom error types implementing `ResponseError`. - Use extractors (Json, Path, Query) for request parsing. - Write unit tests inline with `#[cfg(test)]` modules. - Use `tracing` crate for structured logging. # Code Style Preferences - Use TypeScript strict mode. Define types for all variables, parameters, and return values. - Never use the `any` type. Use `unknown` if the type is truly uncertain, then narrow it. - Use `const` by default. Only use `let` when reassignment is needed. Never use `var`. - Always handle errors explicitly. Use try/catch for async operations. Never silently swallow errors. - Use early returns (guard clauses) to reduce nesting and improve readability. - Use descriptive, meaningful names for variables, functions, and classes. Avoid abbreviations. - Keep functions small and focused. Each function should do one thing. Aim for under 50 lines. # What to Avoid - Do not use `unwrap()` or `expect()` in production paths. - Do not clone data unnecessarily — use references. - Do not use `unsafe` unless absolutely required and documented. - Do not ignore compiler warnings.
About Rust + Actix Web AI Rules
AI coding rules files help your AI assistant (Cursor, Windsurf, Claude Code, GitHub Copilot, or Cline) understand your project's conventions, tech stack, and coding standards. This ensures the AI generates code that matches your team's style and follows best practices for Actix Web.
This preset is designed for Rust + Actix Web projects and includes rules for:
- Use strong typing for all data structures with `serde` derive macros.
- Use `Result<T, E>` for error handling, never `unwrap()` in production code.
- Use async/await with Tokio runtime.
- Structure: handlers/, models/, services/, config/, errors/.
- Use custom error types implementing `ResponseError`.
Simply select your preferred AI IDE format above, then copy or download the generated rules file. Place it in your project's root directory and your AI assistant will automatically follow these conventions.
Get This Preset for a Specific IDE
Cursor
Rust + Actix Web rules for Cursor
Windsurf
Rust + Actix Web rules for Windsurf
Claude Code
Rust + Actix Web rules for Claude Code
GitHub Copilot
Rust + Actix Web rules for GitHub Copilot
Cline
Rust + Actix Web rules for Cline
Zed AI
Rust + Actix Web rules for Zed AI
Aider
Rust + Actix Web rules for Aider
Continue.dev
Rust + Actix Web rules for Continue.dev
Devin AI
Rust + Actix Web rules for Devin AI
Amazon Q
Rust + Actix Web rules for Amazon Q
Bolt.new
Rust + Actix Web rules for Bolt.new
Lovable
Rust + Actix Web rules for Lovable
Replit AI
Rust + Actix Web rules for Replit AI
Augment Code
Rust + Actix Web rules for Augment Code
JetBrains AI
Rust + Actix Web rules for JetBrains AI