Generate production-ready Tauri Cursor rules for Project Rules (.mdc), AGENTS.md, or legacy .cursorrules. This template encodes stack-specific conventions for projects using Tauri. Lightweight desktop framework with a Rust backend and web frontend.
The template focuses Cursor AI on concrete Tauri practices instead of generic coding advice. Required sections are always included; optional sections can be enabled when they match your project.
Required guidance
- Tauri Architecture
- Security
- Rust Backend Patterns
- Frontend Integration
Default style
- Indentation: 2 spaces
- Quotes: single
- Semicolons: enabled
- Naming: camelCase
Example Tauri Rules
The generator turns these sections into Project Rules with frontmatter, AGENTS.md, or a single .cursorrules file depending on the output format you choose.
Tauri Architecture
- Separate concerns: Rust backend (src-tauri/) handles system operations, web frontend handles UI.
- Use Tauri commands (#[tauri::command]) for all backend operations — never call system APIs from the frontend.
- Keep the Rust backend focused on native functionality: file system, system tray, notifications, window management.
- Use the invoke() API in the frontend to call Rust commands, with typed parameters and return values.
- Configure tauri.conf.json with appropriate window settings, security policies, and bundle config.
- Use Tauri's event system for bidirectional communication between frontend and backend.
Security
- Use the allowlist in tauri.conf.json to restrict which APIs are accessible from the frontend.
- Enable only the APIs your app actually needs — never enable the all permission broad flag.
- Use Tauri's CSP (Content Security Policy) to restrict resource loading.
- Validate all user input in Rust commands before processing.
- Use the tauri::api::path module for resolving standard directories instead of hardcoding paths.
- Keep Tauri CLI and Rust dependencies updated — follow the Tauri security advisories.
- Use Tauri's built-in updater for secure application updates.
Rust Backend Patterns
- Use the Tauri State manager (tauri::State) for shared application state.
- Organize Rust code into modules: commands/, state/, utils/, error.rs.
- Use thiserror or anyhow for structured error handling in commands.
- Return Result<T, String> from Tauri commands for proper error propagation.
- Use async Tauri commands with tokio for non-blocking operations.
- Follow Rust naming conventions: snake_case functions, PascalCase types, SCREAMING_SNAKE_CASE constants.
- Use tracing or log crates for structured logging instead of println!.
What does the Tauri Cursor rules template include?
It includes 4 rule sections covering tauri architecture, security, rust backend patterns and other Tauri development conventions.
Can I generate Tauri Project Rules and AGENTS.md from the same template?
Yes. The generator can export the same stack-specific guidance as modern Project Rules (.mdc), AGENTS.md, or a legacy .cursorrules file.
Should I combine Tauri with other Cursor rules templates?
Yes. You can combine Tauri with related templates such as TypeScript, Tailwind CSS, Docker, or backend frameworks when your project uses multiple technologies.