What problem does it solve? C++ codebases often suffer from unclear ownership, bloated files mixing unrelated responsibilities, stringly-typed state, and ad-hoc threading that causes races and latency. This Skill provides concrete design rules for building maintainable C++ APIs and native implementations, including React Native Nitro Modules. ## Core Features & Use Cases - Type-Safe API Design: Model state variants with std::variant and strong structs instead of structs full of std::optional fields. - File Organization Rules: Enforce one cohesive responsibility per file, keep headers small, and split converters, delegates, and platform adapters into named files. - Ownership and Async Guidance: Apply RAII, avoid raw owning pointers, keep work off main/UI threads, and treat mutexes as a last resort with strict callback rules. - Nitro Module Support: Implement generated HybridObject specs correctly with std::shared_ptr<Promise<T>> and focused spec files. - Use Case: When implementing a C++-backed Nitro Module for barcode scanning, use this Skill to model ScannedBarcode as a variant type, keep HybridDataScanner.cpp focused, and route camera callbacks through a single owned executor. ## Quick Start Use the cpp skill to review my HybridDataScanner.cpp implementation and suggest how to restructure its ownership and file boundaries.