/Sylius

eCommerce PHP framework built on top of Symfony with component-based architecture and format-agnostic rendering. (HTML/JSON/XML)

Primary LanguagePHPMIT LicenseMIT

Sylius

Gitter chat License Version Build status on Linux Scrutinizer Quality Score HHVM Status Dependency Status

Sylius is an open source e-commerce solution for PHP, based on the Symfony2 framework.

Ultimate goal of the project is to create a webshop engine, which is user-friendly, loved by developers and has a helpful community.

Sylius is constructed from fully decoupled components (bundles in Symfony2 glossary), which means that every feature (products catalog, shipping engine, promotions system...) can be used in any other application.

We're using full-stack BDD methodology, with phpspec and Behat.

Windows support is a WIP!

Build status on Windows

Documentation

Documentation is available at docs.sylius.org.

Quick Installation

$ wget http://getcomposer.org/composer.phar
$ php composer.phar create-project sylius/sylius
$ cd sylius
$ php app/console sylius:install
$ php app/console server:run

The install script will give you the option to run fixtures that make testing and development phases much easier.

If you want to try out new Sylius UI, please run the following commands:

$ npm install
$ npm run gulp

Behat scenarios

By default Behat uses http://localhost:8080/ as your application base url. If your one is different, you need to create behat.yml files that will overwrite it with your custom url:

imports: ["behat.yml.dist"]

default:
    extensions:
        Behat\MinkExtension:
            base_url: http://my.custom.url

Then run selenium-server-standalone:

$ bin/selenium-server-standalone

Then setup your test database:

$ php app/console doctrine:database:create --env=test
$ php app/console doctrine:schema:create --env=test

You can run Behat using the following commands:

$ bin/behat

Troubleshooting

If something goes wrong, errors & exceptions are logged at the application level:

$ tail -f app/logs/prod.log
$ tail -f app/logs/dev.log

If you are using the supplied Vagrant development environment, please see the related Troubleshooting guide for more information.

Contributing

This page contains all the information about contributing to Sylius.

Sylius on Twitter

If you want to keep up with the updates, follow the official Sylius account on Twitter.

Bug tracking

Sylius uses GitHub issues. If you have found bug, please create an issue.

MIT License

License can be found here.

Authors

Sylius was originally created by Paweł Jędrzejewski. See the list of contributors.