Namenskonventionen
Der Name der App ergibt sich aus den Konventionen von composer. Ein Composer-Package besteht aus einem Wort-Paar in dieser Form: package_type/package_name
Alle brandbox Apps werden in den Namespace „brandbox“ gelegt: brandbox/package-name
Individuelle Apps tragen den Namen des Kunden wie folgt: brandbox/{$kunde}-package-name
App strukturieren
Die Verzeichnisstruktur einer App ist einfach und flexibel. Das App folgt einer Reihe von Konventionen, die dabei helfen, den Code zwischen allen brandbox Apps konsistent zu halten.
brandbox/ └─ plugin-name/ │ ├─ resources/ │ ├─ .phpstorm.meta.php/ │ ├─ data.conf/ │ ├─ languages/ │ │ ├─ de.xml │ │ └─ en.xml │ ├─ js/ │ ├─ presets/ │ ├─ wizards/ │ ├─ dashboard.json │ └─ dashboard-config.json │ ├─ src/ (PSR-4) | └─ {YourNamespace}/ | └─ {YourFeature}/ | ├─ Lib/ | | ├─ Entity/ | | ├─ Event/ | | ├─ Exceptions/ | | ├─ Execute/ | | ├─ Map/ │ | ├─ Migration/ | | ├─ Repository/ | | ├─ Request/ | | └─ Widget/ | ├─ views/ | ├─ config.json | └─ engine.php │ ├─ test/ (PSR-4) │ ├─ Cases/ │ ├─ Resources/ │ └─ phpunit.xml.dist │ └─ composer.json
Weitere Informationen
- Doctrine für Lib/Entity/
- Controller für engine.php
- Mapping für Lib/Map/
- Widgets für Lib/Widget/
- Handlebars für views/
- Übersetzungen für /resources/languages/
composer.json
Entspricht dem Aufbau wie er bei getcomposer.org beschrieben wird