desktop-feature-crud

Generates end-to-end CRUD features for Tauri v2 desktop apps with SQLite migrations and typed bindings.

1|Updated Jul 7, 2026
One-click install
npx skills add https://github.com/codjeremias-cell/Orquestrador-fable --skill desktop-feature-crud-codjeremias-cell
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: desktop-feature-crud
Source: https://github.com/codjeremias-cell/Orquestrador-fable/tree/main/skills/desktop-feature-crud
Command: npx skills add https://github.com/codjeremias-cell/Orquestrador-fable --skill desktop-feature-crud-codjeremias-cell

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Building a full entity feature in a Tauri desktop app requires coordinating database migrations, Rust commands, TypeScript bindings, and UI screens by hand, which is repetitive and error-prone. This Skill generates the entire vertical slice of an entity from a small declarative spec, idempotently. ## Core Features & Use Cases - Versioned SQLite Migrations: Creates paired up/down SQL migration files (V<n>__<entity>.up.sql / .down.sql) for tauri-plugin-sql, always using the next free migration number. - Thin Rust Commands: Generates #[tauri::command] functions with parameterized SQL only, registered with tauri-specta to produce typed bindings.ts consumed by the frontend. - CRUD Screen: Produces a form plus list view consuming only the typed binding, covering loading, empty, and error states with basic accessibility. - Use Case: Given the spec "entity: Produto, fields: nome text not null, preco real not null, ativo bool default true", the Skill outputs the migration, the criar_produto Rust command, regenerated bindings.ts, and a working CRUD screen, verified by a create/list/update/delete smoke test. ## Quick Start Ask the AI to create the CRUD for an entity end to end in your Tauri app, providing the entity name and its fields with types.

Frequently Asked Questions about desktop-feature-crud

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a CRUD feature in a Tauri v2 app?▼

Provide a declarative spec with the entity name and fields (name, type, nullability). The Skill generates the SQLite up/down migration, a thin Rust command using parameterized SQL, typed bindings via tauri-specta, and a form-plus-list screen, then verifies it with a smoke test.

How do SQLite migrations work with tauri-plugin-sql?▼

Migrations are versioned SQL files registered with .add_migrations() and applied automatically at app boot, but only the Up migration runs. The Down file is a manual dev/rollback artifact executed separately via the sqlite3 CLI on a database copy.

Does tauri-specta generate TypeScript bindings for Rust commands?▼

Yes, commands annotated with #[specta::specta] are exported by tauri-specta into a bindings.ts file. The frontend calls these typed functions so the TypeScript compiler validates the contract between frontend and backend.

When should I not use this Tauri CRUD generator?▼

Do not use it for the initial project scaffold (use desktop-tauri-scaffold), for packaging, or for other stacks like JavaFX/JDBC or Spring Boot, which have their own entity generators. It also stops if the entity spec is ambiguous or references a foreign key to an entity that does not exist yet.

How are destructive SQLite schema changes handled safely?▼

Destructive changes like dropping or renaming columns follow the safe SQLite pattern: create a new table, copy the data, drop the old table, and rename. They are tested on a temporary database copy first and never applied directly to a production database.