Basic Conventions
This is the list of naming conventions the B2B Suite complies to:
Group | Practice |
---|---|
DI Container | All container ids look like b2b_*.* |
The first asterisk is the component name | |
The second asterisk is a class name abbreviation | |
Database | All table names start with b2b_ |
All table names are in singular | |
All field and table names are in snake case | |
Attributes | All attribute names start with swag_b2b_ |
Subscriber | All subscriber methods are named in accordance with their function, not to the event |
Tests | All test methods are in snake case |
All test methods start with test_ | |
Templates | All new layout modules are wrapped in b2b--* class containers |
Modules reuse the template style of Shopware | |
CSS Selectors | Three levels of selector depth as max |
Twig Blocks | {% block b2b_* %}{% endblock %} empty blocks are in one line |
JavaScript | The B2B Suite is written in TypeScript |
Storefront plugins | File names end with *.plugin.ts |
Interfaces | File names start with I , e.g., IAjaxPanelEvent.ts |
Snippets | The root snippet key is b2b |