Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Sylius - E-Commerce for Symfony Developers

Sylius - E-Commerce for Symfony Developers

Talk at the SymfonyLive London conference. Why Sylius is the eCommerce of the future and how you can use it as a Symfony developer.

7ae8ff67c92e2087f2e84884449d6da6?s=128

Pawel Jedrzejewski

September 26, 2014
Tweet

Transcript

  1. Sylius - E-Commerce for Symfony Developers Paweł Jędrzejewski SymfonyLive, 26th

    September 2014 in London, UK
  2. Paweł Jędrzejewski Huge beliver in Open Source Creator of Sylius

    Co-Founder at LAKION BDD evangelist !
  3. ŁÓDŹ, POLAND

  4. I care about developers.

  5. We, open source developers, should care about each other.

  6. ? What are your options?

  7. 1. Start from scratch.

  8. code for many MANY long hours

  9. YEAH… And they think that you can do better than

    hundreds of open source developers…
  10. YEAH… And think that you can do better than hundreds

    of open source developers…
  11. You can do a better job.

  12. If you collaborate.

  13. Open source project Hundreds of developers thousands of man-hours Combined

    experience use-cases testing in production
  14. 2. Integrate an existing e-commerce solution.

  15. It can be like this…

  16. OLD „PHP” way MONOLITHIC NOT Developer-friendly Untesteble hacky

  17. OLD „PHP” way MONOLITHIC NOT Developer-friendly Untesteble hacky

  18. None
  19. !!! Reinventing the wheel is bad…

  20. …But if your wheel looks like this…

  21. You may CONSIDER REplacing it.

  22. Sylius Modern e-commerce for Symfony2

  23. What is sylius Sylius components Sylius bundles Sylius platform

  24. What is sylius Sylius components Sylius bundles Sylius platform

  25. Sylius platform Core Web Interface Symfony Doctrine CMF Payum

  26. ? How does it look?

  27. Currently… not so tempting

  28. Work in progress

  29. Responsive

  30. ? What can you build using Sylius?

  31. sommelier-prive.de

  32. colorscience.com

  33. artlantis.com

  34. ? What makes Sylius different?

  35. 2014 OBJECT ORIENTED PHP • Decoupled architecture • No singletons

    and static access • Testable code • Lack of magic and hacks • DependencyInjection and many other design patterns
  36. Modern Foundation • Symfony full-stack combined with tons of excellent

    libraries from the community • Shares the platform with great projects like OroCRM, Akeneo PIM, Drupal, eZ Publish • Built on the shoulders of the open source giants
  37. Next level Flexibility on symfony • Dynamic mapping of the

    default models • Every service replacable and classes parametrized • Doctrine RTEL • Dynamic calculators for shipping, pricing, taxes • Events • Validation can be customized • Format agnostic controllers
  38. Resource management via orm, Mongo dB ODM and PHPCR ODM

    Sylius Resource Layer ORM MongoDB PHPCR Your custom driver?
  39. None
  40. Behavior DRIVEN DEVELOPMENT • StoryBDD with Behat maintains high level

    of communication quality among the community • We communicate using examples • Behat scenarios are executed as acceptance tests automatically on every change • SpecBDD using phpspec punishes us for any bad design decision • CodeQuality
  41. Feature descriptions

  42. Executed on travis-ci.org

  43. Code quality

  44. Compared to „old” solutions

  45. ? How to get started?

  46. Require a single component $ composer require sylius/product:v0.10.0 <?php !

    $product = new Product(); ! $product ->setName(’T-Shirt’) ->setDescription(’Really cool t-shirt’) ;
  47. Install symfony2 bundle $ composer require sylius/cart-bundle:v0.10.0 <?php ! class

    FooController extends Controller { public function barAction() { $cart = $this->get(’sylius.cart_provider’)->getCart(); } } And follow the installation instructions from the documentation
  48. Install SyliuS $ composer create-project sylius/sylius -s dev $ cd

    sylius $ app/console sylius:install $ composer create-project sylius/sylius-standard or
  49. components and bundles

  50. sylius e-Commerce toolset Product Cart Order Shipping Taxation Payment Inventory

    Currency Pricing Promotion Money Addressing
  51. sylius Generic toolset Flow Settings Taxonomy Resource Sequence Variation Attribute

    Locale
  52. What about content management? Symfony CMF Integration • Very basic

    integration with the CMF • Currently working on Sylius project with many CMS features • Big plans to take this integration even further • Block based product pages, all media stored via CMF
  53. translate.sylius.org Over 215 translators!

  54. DOCS.sylius.org

  55. sylius.org

  56. @pjedrzejewski @Sylius @Lakion pjedrzejewski.com sylius.org lakion.com THANK YOU! joind.in/11556

  57. Image Credits https://www.flickr.com/photos/ilikespoons/8395923694/ https://www.flickr.com/photos/kalexanderson/5421517469 https://www.flickr.com/photos/woolamaloo_gazette/12822529314 https://www.flickr.com/photos/dey/44559604 https://www.flickr.com/photos/suckamc/8474229421 https://www.flickr.com/photos/kwl/4247555680