Skeleton for starting Sylius bundles.
Clone or download
pamil Merge branch '1.3'
* 1.3:
  Add Sylius core team as codeowners
  Miscellaneous fixes for 1.3
  Remove dependency on "symfony/symfony"
  Bring back "sylius-plugin" package type
  Change package type to "symfony-bundle" in order to support Flex
Latest commit c084945 Oct 5, 2018

Plugin Skeleton

Skeleton for starting Sylius plugins.


  1. Run composer create-project sylius/plugin-skeleton ProjectName.

  2. From the plugin skeleton root directory, run the following commands:

    $ (cd tests/Application && yarn install)
    $ (cd tests/Application && yarn build)
    $ (cd tests/Application && bin/console assets:install public -e test)
    $ (cd tests/Application && bin/console doctrine:database:create -e test)
    $ (cd tests/Application && bin/console doctrine:schema:create -e test)


Running plugin tests

  • PHPUnit

    $ vendor/bin/phpunit
  • PHPSpec

    $ vendor/bin/phpspec run
  • Behat (non-JS scenarios)

    $ vendor/bin/behat --tags="~@javascript"
  • Behat (JS scenarios)

    1. Download Chromedriver

    2. Download Selenium Standalone Server.

    3. Run Selenium server with previously downloaded Chromedriver:

      $ java -jar selenium-server-standalone.jar
    4. Run test application's webserver on localhost:8080:

      $ (cd tests/Application && bin/console server:run localhost:8080 -d public -e test)
    5. Run Behat:

      $ vendor/bin/behat --tags="@javascript"

Opening Sylius with your plugin

  • Using test environment:

    $ (cd tests/Application && bin/console sylius:fixtures:load -e test)
    $ (cd tests/Application && bin/console server:run -d public -e test)
  • Using dev environment:

    $ (cd tests/Application && bin/console sylius:fixtures:load -e dev)
    $ (cd tests/Application && bin/console server:run -d public -e dev)