pproenca avatar

Rust Implement

A structured workflow for writing Rust that treats code quality as a multi-pass discipline rather than getting it perfect on the first try. You design types and signatures first, implement with strict error handling rules (every `?` gets context, no wildcards in match arms), then actively simplify by removing unnecessary abstractions. The fourth pass runs automated lints plus a manual checklist. What makes this useful is the specificity: it includes nine concrete transformations like replacing boolean parameters with enums and using BTreeMap for anything serialized. The thread-through plumbing section and ownership decision tree are legitimately helpful references when you're knee-deep in borrow checker fights. It's opinionated about anyhow versus thiserror and when to Box::pin futures, which saves you from relitigating those decisions every time.

skills.sh installs
246
GitHub stars
222
last updated
Aug 21, 2026

Install

$ npx -y skills add pproenca/dot-skills --skill rust-implement --agent claude-code

Installs into .claude/skills of the current project.

Files

Rust Implementation Discipline

Write code in passes. Experts don't produce perfect code in one shot -- they design, implement, review, and simplify. Follow this process for every module you write.


Pass 1: Design Types and Signatures

Before writing any implementation, write ONLY the type definitions and function signatures. No bodies. No logic.

Ask yourself these questions before moving on:

  • Can any enum state represent an invalid combination? If yes, restructure so invalid states are unrepresentable.
  • Are all parameters self-documenting? Replace bool params with enums (Transformation 2).
  • Does every struct that will be serialized or compared use BTreeMap, not HashMap (Transformation 3)?
  • Do config structs derive Default (Transformation 6)?
  • Would a caller confuse the order of String parameters? Use newtypes.
  • Does any struct have 2+ Option<T> fields where only one combination is valid at a time? Convert to an enum (Transformation 8).
  • Does any function take 4+ parameters? Replace with an args struct (Transformation 9).

Do not proceed to Pass 2 until the types are right. Types are the architecture.


Pass 2: Implement

Sponsors

Details

Repository
github.com/pproenca/dot-skills
Categories
Documentation, Code Review & Quality, Debugging, Automation & Workflows, Rust, Design & UI/UX
First seen
Jun 3, 2026

More from pproenca/dot-skills

All 100
1davila7 avatargraphqldavila7/claude-code-templatesGraphQL gives clients exactly the data they need - no more, no less. One endpoint, typed schema, introspection. But the flexibility that makes it powerful also 245skills.sh installs
2davila7 avatarplaywright-e2e-builderdavila7/claude-code-templatesPlan and build comprehensive Playwright E2E test suites with Page Object Model, authentication state persistence, custom fixtures, visual regression, and CI int245skills.sh installs
3guia-matthieu avatarchallenger-saleguia-matthieu/clawfu-skillsStop being a relationship builder. Learn the research-backed methodology that top performers use to teach, tailor, and take control of sales conversations. Use 244skills.sh installs
4wix avatarwix-cli-dashboard-pluginwix/skillsUse when building widgets that extend Wix dashboard pages for first-party business apps. Triggers include dashboard plugin, dashboard slot, extend dashboard pag243skills.sh installs
5guia-matthieu avatartranscription-to-contentguia-matthieu/clawfu-skillsTransform podcast transcripts into multiple content assets—blog posts, social snippets, newsletters, and SEO-optimized landing pages—using systematic repurposin242skills.sh installs
6pproenca avatardomain-architectpproenca/dot-skillsDiscovers business domains in a Swift codebase by tracing what users can DO — not by reading folder names or architecture docs. Maps each domain's vertical slic242skills.sh installs