Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/oxid-esales/module_skeleton_generator
Folders structure, empty classes and metadata generation for new OXID eShop modules.
https://github.com/oxid-esales/module_skeleton_generator
oxid-esales oxid-module php
Last synced: about 1 month ago
JSON representation
Folders structure, empty classes and metadata generation for new OXID eShop modules.
- Host: GitHub
- URL: https://github.com/oxid-esales/module_skeleton_generator
- Owner: OXID-eSales
- License: gpl-3.0
- Created: 2015-08-17T11:51:30.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2021-11-09T09:03:44.000Z (about 3 years ago)
- Last Synced: 2024-06-19T07:38:02.297Z (6 months ago)
- Topics: oxid-esales, oxid-module, php
- Language: PHP
- Homepage:
- Size: 970 KB
- Stars: 12
- Watchers: 33
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
Awesome Lists containing this project
README
# OXID Module Skeleton Generator
----
Folders structure, empty classes and metadata generation for new OXID eShop modules.
### Concentrate only on features - let OXID Module Skeleton Generator create all the rest!
* **Enter Your copyright data in the module settings**
* **Open an easy to use Module Generator Wizard**
* **Enter new module name and optional components**
* **Press "Generate New Module" and its done - new module is now ready to be activated and filled with features!**## OXID Module Skeleton Generator features
- Fully configurable vendor/author parameters for new modules creation
- Vendor folder and vendor metadata automatic creation
- Standard module folders structure creation
- Completely filled module medatada file generation
- Naming based on vendor data and module name
- Created modules follow OXID standards
- Automatic creation of pre-filled README file
- Generation of PHP files comments with all vendor and module data
- Main module class is included in each generated module
- It contains activation/deactivation events
- Support automatic SQL execution on the events
- The class "knows" about its module and provides useful methods
- Generation of skeleton files for...
- Overloaded (extend) classes
- New controllers (also templates are created)
- Model classes
- List model classes (linked with item model classes)
- Widgets (also with templates)
- Smarty blocks metadata and templates generation
- Module settings metadata and translations generation
- Translation files creation
- Module version
- Automatic checkout of tests folder
- And generation of pre-filled tests classes for each new module class
- Configurable GIT repository URL to get tests folder from
- Learning mode
- Creation of hints and to do tasks inside generated files to help proceed with development
- Sample source code generation to give a hint what each class could/should contain
- Generated module is immediately working
- Activate it and events, settings, blocks, controllers, etc. will already be in action!## Installation
- Copy the content of `copy_this/` folder to OXID eShop root folder
- Activate the module in administration area
- Set eShop `modules/` folder writable while generating new modules## Usage
- Make sure eShop `modules/` folder (and also Your vendor sub-folder, if it exists) is writable
- Log in to eShop administration area
- (for first run) Go to _Extensions -> Modules -> OXID Module Skeleton Generator -> Settings -> Vendor and Copyright Settings_ and enter Your vendor, copyright and author data
- Open _Module Generator -> Wizard_ (refresh page if it did not appear after module activation)
- Enter a name for a new module in "UpperCamelCase" format, e.g. "MyModule"
- (optionally) Enter any other options required in a new module (refer to help hints for more info)
- Press "Generate New Module" button
- The module skeleton source is now available in Your vendor sub-folder
- And the module could be activated already in _Extensions -> Modules_## To do and nice to have features for future releases
- Refactor longer classes to move some methods elsewhere
- Extend blocks definition validation and blocks templates naming
- EDIT mode feature: for existing modules, generate/add extra stuff
- Create nice looking generation form with JS/AJAX events to validate and help enter proper values (auto-complete)
- Admin interface presets generation, also with menu.xml
- Generate picture with PNG text overlay with real module name
- PHPStorm style schemes (or some code beautifier) integration - after generation do code formatting
- Copy not all folders, but only required ones (Refactor copyDir by providing "copy scenario" array)
- dbEvent fail on multi-shops and multi-lang in real life projects - need PHP based DB installation