What problem does it solve?
This skill helps you design and refactor Rust project structure so your workspace, crate boundaries, and layering match your scale and constraints, instead of following a template that later becomes painful.
Core Features & Use Cases
- Modular workspace planning: Choose between single-crate, multi-crate workspace, modular monolith, or microservices based on concrete drivers like team size, deployment independence, and runtime targets.
- Layering and dependency direction: Apply an explicit acyclic layering model so domain code stays isolated from adapters and infrastructure.
- Crate and module organization guidance: Select conventions for directory layout, module declaration style, error strategy (thiserror/anyhow/hybrid), and async boundaries (sync core vs async edges).
- Refactor decision support: Diagnose common failure modes (e.g., crate sprawl, accidental “common” crates, async in pure logic, visibility mismatches) and propose the lowest-cost fix.
Quick Start
Ask the skill to review your current Rust layout and recommend a target workspace/crate structure based on your codebase size, number of binaries, and desired deployment boundaries.