Rust
Modular, scalable, automated development intelligence.
npx -y skills add DongDuong2001/pudo-code-system --skill rustAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 5 stars5 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
1.8 KB, as published. Nobody here has run it
Rust (Backend) PUDO Checklist
1. PLAN (Architecture & Strategy)
- Framework Selection: Choose web framework (Axum, Actix-web) based on performance vs. ecosystem needs.
- Crate Ecosystem: Plan dependencies (e.g.,
tokiofor async runtime,serdefor serialization,sqlxorsea-queryfor DB). - Error Handling: Define a centralized application error type using crates like
thiserrororanyhow. - State Management: Plan how application state (DB pools, config) will be shared across thread workers.
2. UNDERSTAND (Context & Auditing)
- Borrow Checker & Lifetimes: Audit data structures to minimize clones; rely on references where safe across async boundaries.
- Async Context: Ensure types crossing
.awaitpoints implementSendandSync. - Safety: Review
unsafeblocks if any exist. Justify their existence.
3. DEVELOP (Implementation)
- Structs & Traits: Define core domain models. Use
#[derive(Serialize, Deserialize)]for data transfer objects. - Routes: Implement handlers with strongly typed extractors (Json, Path, Query).
- Database: Use compile-time checked SQL queries (e.g.,
sqlx::query!) for type safety. - Testing: Write inline unit tests (
#[test]) and asynchronous integration tests (#[tokio::test]).
4. OPTIMIZE (Performance & Review)
- Binary Size & Speed: Review
Cargo.tomlprofiles (e.g., strictlyopt-level = 3, LTO enabled for release). - Memory Allocation: Profile long-lived objects. Consider
Arcfor shared read-only state instead of cloning. - Compilation Time: Use
cargo clippyandcargo fmtto enforce idiomatic code and avoid macro bloat where unnecessary. - Logging: Configure structured async logging using
tracingandtracing-subscriber.