plugins/cpp-desktop/skills/implementing-cpp/SKILL.md
Implements C++17 desktop GUI code with wxWidgets, GTK3, or Qt framework patterns and CMake build system. Use when writing C++ desktop application code, creating GUI components, or implementing framework-specific features.
npx skillsauth add qte77/claude-code-utils-plugin implementing-cppInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Target: $ARGUMENTS
Implement C++ desktop GUI code following framework conventions, C++17 standards, and CMake best practices. No over-engineering.
wxWidgets in CMakeLists.txt or wx/ includes -> wxWidgetsgtk in pkg-config or CMakeLists.txt -> GTK3Qt in CMakeLists.txt or .pro file -> Qtsrc/ and include/ structurestd::optional, std::variant, structured bindingsstd::unique_ptr by default, std::shared_ptr only when shared ownership requiredconst on methods, parameters, and locals where possiblenew/delete — use smart pointers or container typeswxBEGIN_EVENT_TABLE/wxEND_EVENT_TABLE or Bind() for eventswxFrame, dialogs from wxDialogwxBoxSizer, wxGridSizer) for layout, never absolute positioningg_signal_connect for signal/slot wiringGtkBuilder with .ui files for complex layoutsg_object_unref / g_free for C API resourcesQ_OBJECT macro and MOCQWidget, QMainWindow, QDialog as appropriateQVBoxLayout, QHBoxLayout, QGridLayout)Target-based — use target_link_libraries, target_include_directories
No global state — avoid include_directories(), link_libraries()
Modern find — find_package() with imported targets
Minimum version — cmake_minimum_required(VERSION 3.16)
Platform conditionals:
if(WIN32)
# Windows-specific
elseif(APPLE)
# macOS-specific
else()
# Linux/Unix
endif()
Use preprocessor guards for platform-specific code:
#ifdef _WIN32
// Windows
#elif __APPLE__
// macOS
#else
// Linux/Unix
#endif
Before completing any task:
cmake --build build/ && ctest --test-dir build/ --output-on-failure
#pragma once over include guardsdevelopment
Analyzes industry websites for design patterns, layout, typography, and content strategies using first-principles thinking. Use when researching website design, UI patterns, or competitive design analysis.
development
Audits website usability for UX optimization, covering forms, navigation, validation, and microcopy. Use when reviewing user experience, task completion flows, or interface friction points.
development
Audits website accessibility for WCAG 2.1 AA compliance, generating findings and code fixes. Use when reviewing accessibility, keyboard navigation, screen reader compatibility, or inclusive design.
development
Writes tests following TDD (using vitest and @testing-library/react) best practices. Use when writing unit tests, integration tests, or component tests in TypeScript.