$npx skillfedfor your agent

tauri-development

This skill equips you with patterns for Tauri 2.0 desktop development, covering command definition with specta type generation, Rust-React integration, and proper error handling. Learn state management, async best practices, and desktop-specific constraints to avoid common pitfalls like blocking the async runtime or exposing sensitive errors.

Tauri Development guides you through building desktop apps with Rust backends and React frontends using Tauri 2.0 and specta type binding.

AI-generated summary based on this skill's SKILL.md

4 3 MITupdated by cacr92

Decision gist · record as of 2026-01-30

Tauri Development guides you through building desktop apps with Rust backends and React frontends using Tauri 2.0 and specta type binding. This skill equips you with patterns for Tauri 2.0 desktop development, covering command definition with specta type generation, Rust-React integration, and proper error handling. Learn state management, async best practices, and desktop-specific constraints to avoid common pitfalls like blocking the async runtime or exposing sensitive errors.

manual: git clone https://github.com/cacr92/WeReply → cp -r WeReply/.claude/skills/tauri-development ~/.claude/skills/tauri-development
.claude/skills/tauri-development/SKILL.md · version 13c1fd14

Use it when

  • Tauri-development covers invoking commands from React using the invoke function from @tauri-apps/api/core.
  • Tauri-development explains that specta introspects your Rust command signatures and generates bindings.ts with matching TypeScript types.

Verify before relying

Read SKILL.md below before installing (2 files). Open directory: indexed for reading, not audited.

Same gist for agents: .md · .json

Install

cacr92/WeReply/tauri-development · repository language: Python

Open directory. Skills are indexed for reading, not audited. Review a skill's body before installing it.

Frequently asked questions

AI-generated answers based on this skill's SKILL.md and metadata

How do I create Tauri commands with Rust?

Tauri-development teaches you to define commands in Rust using the #[tauri::command] macro, which automatically exposes them to your frontend. Pair this with specta for type-safe bindings—specta generates TypeScript types from your Rust function signatures, eliminating manual type duplication. Use proper async/await patterns and avoid blocking the async runtime with long-running operations; offload heavy work to separate threads via tauri::async_runtime or tokio tasks.

What's the best way to call Tauri commands from React?

Tauri-development covers invoking commands from React using the invoke function from @tauri-apps/api/core. Import your generated specta bindings to get full TypeScript type safety on both request and response. Handle Promise rejections gracefully—Tauri commands can fail due to serialization errors, Rust panics, or validation logic. Always wrap invokes in try-catch or .catch() handlers and provide meaningful error feedback to users rather than exposing raw Rust error messages.

How does specta type binding work between Tauri frontend and backend?

Tauri-development explains that specta introspects your Rust command signatures and generates bindings.ts with matching TypeScript types. Run specta's code generator (typically via build script) to sync types automatically. This ensures your React components receive the exact shape your Rust backend returns—catch type mismatches at compile time, not runtime. If bindings.ts isn't generating, verify your #[tauri::command] macros are properly annotated and specta is configured in your Cargo.toml.

How do I debug Tauri frontend-backend communication issues?

Tauri-development recommends enabling Tauri's debug logging via RUST_LOG=tauri=debug and checking browser console for invoke errors. Use the Tauri CLI's dev mode for hot-reload feedback. Verify command names match exactly between Rust definition and React invoke calls. Test serialization by logging both sides—print the Rust value before returning and the JavaScript value after receiving. Check that custom types implement serde::Serialize/Deserialize and that your React payload matches the Rust function signature.

What are Tauri performance optimization and async best practices?

Tauri-development covers using tokio for concurrent operations and avoiding blocking the main async runtime with CPU-intensive work. Spawn heavy tasks on separate threads via tauri::async_runtime::spawn_blocking. Batch multiple command calls into a single invocation when possible to reduce IPC overhead. Implement proper state management with Tauri's State<T> to share resources across commands without re-initializing. Use lazy_static or once_cell for expensive initialization, and profile with flamegraph to identify bottlenecks.

How do I implement desktop-specific features like window management and system tray?

Tauri-development teaches window management via the Window API—create, show, hide, and position windows programmatically from Rust commands or React. System tray integration uses tauri::SystemTray with menu items that trigger commands. Handle file system access through Tauri's fs scope (configure in tauri.conf.json) to enforce security boundaries. Implement input validation in Rust before processing user data, and never expose sensitive errors to the frontend—log them server-side and return generic messages to prevent information leakage.

SKILL.md

Rendered from the published skill. Quoted content, verbatim.

Tauri Development Skill

Expert guidance for Tauri 2.0 desktop application development with Rust backend and React TypeScript frontend.

Overview

This skill provides comprehensive guidance for: - Creating Tauri commands with proper specta type binding - Integrating Rust backend with React TypeScript frontend - Handling desktop-specific patterns and constraints - Optimizing frontend-backend communication - Following Tauri 2.0 best practices

When This Skill Applies

This skill activates when: - Creating or modifying Tauri commands - Setting up specta type bindings - Debugging frontend-backend communication issues - Implementing desktop-specific features - Optimizing Tauri application performance - Handling Tauri-specific error cases

Core Tauri Principles

Command Definition Pattern

All

(truncated - see the full file via the links below)

File tree — 2 files
.claude/skills/tauri-development/SKILL.md
.claude/skills/tauri-development/skill.json

Let your AI agent find skills like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 56,283 agent skills by what they can do, searchable in plain language.

wish › “Create and integrate Tauri commands with proper type safety”

Give your agent the search over MCP, or paste the wish link into any chat. No install? Search from any chat →

Related skills

api-design
by cacr92 · cacr92/WeReply

api-design guides you through building robust command interfaces for Tauri applications using type-safe data structures and proven patterns. It covers DTO design, validation at API boundaries, error handling strategies, and documentation practices to ensure your backend contracts are clear and maintainable.

MITfor claude-code, codex, cursorupdated Jan 2026
★ 4repo stars
error-handling-debugging
by cacr92 · cacr92/WeReply

Master error handling across Rust and TypeScript in Tauri applications. Learn custom error types, exception chains, API response patterns, and debugging techniques using tracing and structured logging. Covers database errors, command failures, and React error boundaries.

MITfor claude-code, codex, cursorupdated Jan 2026
★ 4repo stars
refactoring
by cacr92 · cacr92/WeReply

This skill offers structured refactoring strategies to enhance code quality and maintainability. It covers method extraction, eliminating duplication, reducing complexity, improving naming, and addressing technical debt—all while keeping behavior intact. Learn to apply guard clauses, replace magic numbers with constants, and break down large functions into focused, testable pieces.

MITfor claude-code, codex, cursorupdated Jan 2026
★ 4repo stars
deepseek-integration
by cacr92 · cacr92/WeReply

DeepSeek Integration provides expert guidance for connecting to DeepSeek's chat API using reqwest with optimized connection pooling, Bearer token authentication, and configurable timeouts. Handle both standard JSON responses and Server-Sent Events streaming, with built-in retry logic and exponential backoff for resilience.

MITfor claude-code, codexupdated Jan 2026
★ 4repo stars
Error Handler
by bkywksj · bkywksj/knowledge-base

Error Handler provides a structured approach to error management across Tauri's Rust backend and React frontend. It covers AppError enum definitions, three-layer error propagation from database through service to command layer, and frontend error handling with try-catch patterns and Ant Design components. The skill includes ErrorBoundary implementation, safe invoke wrappers, and best practices for avoiding panics and unhandled rejections.

no license declared → metadata onlyfor claude-code, codexupdated Jul 2026
★ 299repo stars
ipc-communication
by cacr92 · cacr92/WeReply

ipc-communication provides expert guidance for setting up inter-process messaging between a Rust Orchestrator and Platform Agents using line-delimited JSON over stdin/stdout. It covers message type definitions, bidirectional command and response patterns, and includes production-ready Rust process management and Python agent implementations with timeout handling and error recovery.

MITfor claude-code, codexupdated Jan 2026
★ 4repo stars

More skills testing-strategy (MIT) · react-typescript-development (MIT)

Tags
rust-backend-integrationtype-safe-ipcdesktop-app-frameworkasync-runtime-patternsfrontend-backend-bridgecross-platform-desktopcommand-architectureerror-handling-strategy