-
Notifications
You must be signed in to change notification settings - Fork 47
Description
(related to CLI; template would live in its own repo)
Goal: Provide an opinionated Shopware 6 extension starter that reflects real SWAG and production plugin patterns and supports LLM-assisted development without pretending to enable blind vibe coding. Users would be able create the plugins using the Shopware CLI. Aim is to reduce TCO by providing a templated guide to plugin design and eventual deployment.
Problem to solve
- Upgrade pain/high TCO
- Users with older SW versions may not have it, or all functionality. Always tied to your Shopware version.
- Devdocs plugin guide could be baked into the CLI itself, with plugin creation done via a <single command + plugin name>. Then: configure your plugin, add a listener, host events.
What we have
bin/console plugin:createcommand (bin/console = CLI baked into Shopware core) to create plugins; is well-rounded (not really documented yet).- command gives you multiple choices and you can get a different directory structure
Story 1: Scaffold a Structured Extension
As a Shopware developer, I want to generate a plugin with a production-aligned structure, so that I start from proven architectural patterns instead of inventing structure.
Acceptance Criteria
- Can use Shopware CLI to create the plugin
- Contains clear separation:
- Core/Content (DAL entities)
- Core/Service (business logic)
- Core/Subscriber (event integration)
- Resources/app/administration (admin module)
- Contains example admin navigation entry
- Contains example service and subscriber
- No business logic in bootstrap class
- Contains example entity
- Strict layer separation (no hidden coupling)
- Includes CHECKLIST.md for Store readiness
Story 2: Map Features to Existing Patterns
As a developer, I want clear integration points in the template, so that I can map my feature idea to an existing implementation pattern and reason about it (manually or with LLM assistance)
Acceptance Criteria
- Template documents:
- How to add admin module
- How to extend DAL entities
- How to register event subscribers
- Where to put business logic
- Architecture mirrors SWAG plugins and established 3rd-party plugins
- No “magic” abstraction layers beyond Shopware conventions
- Integration points are explicitly listed in README (e.g. “If you want X, go to Y”)
- Structure is predictable and stable enough for LLM reasoning
- No abstraction introduced solely for AI convenience
- Documentation clearly states:
- LLMs assist but do not replace architectural understanding
- Review responsibility remains with the developer
- Production readiness requires domain knowledge
Non-Goals
- Enabling fully inexperienced developers to build Store-ready plugins without understanding Shopware
- Replacing architectural knowledge with AI tooling
- Automating production hardening