-
Notifications
You must be signed in to change notification settings - Fork 0
How to develop webino module
HOME / How to develop / Webino module development
It's required to have installed the Webino Development Kit, globally.
To install development toolkit, run:
sudo npm install webino-devkit -g --unsafe-perm
Read more on webino devkit installation
Read more on webino devkit usage
To understand the basic Webino concepts, you have to know something about its core modules.
Read more on webino core modules
Setting up the development environment for a module.
Useful when you want to develop your Webino modules instantly.
- Run
webino mod:WebinoExample
, replace "WebinoExample" with required module name.
Useful when you want to initialize cloned module repository.
- Run
cd /var/www/public/webino/modules
to go into modules directory
- Clone required module repository and go to its directory
- Run
webino init
Build of a module goes through all routine tasks needed before a release.
- Go to module directory
- Run
webino build
to build the module
NOTE: Ideal for continuous integration.
Run following tasks as you wish to validate your module.
- Go to module directory
- Run
webino show
to check module integration with the skeleton application - Run
webino phpunit
to run PHPUnit tests - Run
webino test
to run tests and analysis - Run
webino selenium_test
to run integration tests- OPTIONAL: To specify the testing URI set the uri option, e.g.
grunt selenium_test -uri http://example.com/
- NOTE: Selenium server will be started/stopped automatically, assuming
/etc/init.d/selenium
is available to run.
- OPTIONAL: To specify the testing URI set the uri option, e.g.
- PHP 5.5
- PSR-2 coding style
- Linux
- Selenium
- Allure
- NetBeans (recommended)
- Web browser (recommended)
- MySQL
- Apache (recommended)
-
/var/www/public/
as a localhost web server root directory, by default
Builded API documentation ------- ._api/
Build logs ---------------------- ._log/
Testing environment ------------- ._test/
Testing application --------------- ZendSkeletonApplication/
Module CLI tools ---------------- bin/
DI definition generator ----------- definition_generator.php
Module config ------------------- config/
module.config.php
Module data assets -------------- data/
Generated DI definitions -------- di/
definition.php
PHP files to include ------------ inc/
functions.php
NetBeans IDE settings ----------- nbproject/
project.properties
project.xml
Module PHP source --------------- src/
WebinoExample/
Module main class ------------------- Module.php
Module tests -------------------- tests/
Functional tests ------------------ functional/
AppTest.php
Module tests resources ------------ resources/
Module test configs ----------------- config/
Testing app config -------------------- application.config.php
Module test config -------------------- module.config.php
data/
Test resources DI definitions --------- di/
definition.php
Test assets PHP source -------------- src/
Application/
Controller/
Testing app index controller--------------- IndexController.php
Module test view templates ---------- view/
application/
index/
layout.html
Testing app autoloader -------------- init_autoloader.php
Acceptance tests ------------------ selenium/
WebinoExample/
HomeTest.php
bootstrap.php
phpunit.xml
Unit tests ------------------------ WebinoExample/
bootstrap.php
phpunit.xml
Third-party libraries ----------- vendor/
.gitignore
Dependency manager config ------- composer.json
Automation tool file ------------ Gruntfile.js
LICENSE
Standard module file ------------ Module.php
Automation tool config ---------- package.json
Documenter config --------------- phpdoc.xml
VCS pre-commit hook ------------- pre-commit
README
NOTE: Replace "WebinoExample" with your namespace.
NOTE: Directory names starting with "._" are excluded from VCS.
If something is wrong with this wiki, please let us know.
Webino™ is a webapp's platform. © 2014 by Webino, s. r. o. All rights reserved.