← ClaudeAtlas

craftcmslisted

Craft CMS 5 plugin and module development — extending Craft with PHP. Covers the full extend surface: elements, element queries, services, models, records, project config, controllers, CP templates, migrations, queue jobs, console commands, field types, native fields, events, behaviors, Twig extensions, utilities, widgets, filesystems, permissions, debugging, testing, GraphQL, and Craft configuration (config/app.php, config/general.php, Redis, SMTP, database replicas). Triggers on: beforePrepare(), afterSave(), defineSources(), defineTableAttributes(), attributeHtml(), MemoizableArray, getConfig(), handleChanged, $allowAnonymous, $enableCsrfValidation, BaseNativeField, EVENT_DEFINE_NATIVE_FIELDS, FieldLayoutBehavior, EVENT_REGISTER, EVENT_DEFINE, EVENT_BEFORE, EVENT_AFTER, CraftVariable, registerTwigExtension, DefineConsoleActionsEvent, PHPStan, Pest, plugin development, module development, custom element type, custom field type, webhook, API endpoint, queue job, batch processing, data sync, migration, CP sec
sublimate-toe9304/craftcms-claude-skills · ★ 1 · API & Backend · score 74
Install: claude install-skill sublimate-toe9304/craftcms-claude-skills
# Craft CMS 5 — Extending (Plugins & Modules) Reference for extending Craft CMS 5 through plugins and modules. Covers everything from elements and services to controllers, migrations, fields, and events. This skill is scoped to **extending** Craft — building plugins, modules, custom element types, field types, and backend integrations. For site/platform development (content modeling, sections, entry types, Twig templating, plugin selection), see the `craft-site` skill. ## Companion Skills — Always Load Together When this skill triggers, also load: - **`craft-php-guidelines`** — PHPDoc standards, section headers, naming conventions, class organization, ECS/PHPStan, verification checklist. Required for any PHP code. - **`ddev`** — All commands run through DDEV. Required for running ECS, PHPStan, scaffolding, and tests. - **`craft-garnish`** — When working on CP JavaScript, asset bundles, or interactive CP components. Covers Garnish's class system, UI widgets (Modal, HUD, DisclosureMenu, Select), drag system, and the Craft.* JS class pattern. ## Documentation - Extend guide: https://craftcms.com/docs/5.x/extend/ - Class reference: https://docs.craftcms.com/api/v5/ - Generator: https://craftcms.com/docs/5.x/extend/generator.html Use `WebFetch` on specific doc pages when a reference file doesn't cover enough detail. ## Common Pitfalls (Cross-Cutting) - Always use `addSelect()` in `beforePrepare()` — it's the Craft convention and safely additive when multiple extensions c