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

Sylius: An E-Commerce Solution Symfony Based

Sylius: An E-Commerce Solution Symfony Based

8056261dc547c3cd14e07623bab18d48?s=128

Sergio Sicari

January 28, 2020
Tweet

Transcript

  1. Sylius An E-Commerce Solution Symfony Based https://www.linkedin.com/in/sergiosicari/ https://github.com/sergioska Sergio Sicari

    Senior Backend Developer / DevOps (PED)
  2. E-commerce Solutions • CMS ◦ Wordpress + WooCommerce ◦ PrestaShop

    ◦ Magento • Custom Implementation ◦ ?????
  3. CMS vs Custom Implementation CMS Custom Implementation • Ready To

    Go • Cheap startup • Bed Coding • Extension can be expensive (magento) • High Customization Level • Code Quality • Long implementation time
  4. What is Sylius? Sylius is an open source e-commerce solution

    Symfony framework based • Components approach • Flexibility • Easy customization • BDD approach (Behavior Driven Development) • Good quality code
  5. Three nature of Sylius Sylius can be considered • a

    collection of decoupled and flexible components • a set of symfony bundle which integrate the components • a complete e-commerce platform that implement all above E-commerce Framework (Sylius) Symfony Bundle Component
  6. Architecture Sylius Components Bundles Core Admin Shop API

  7. Components, Bundles And Platform Sylius Components Bundles Core Admin Shop

    API • Components Every single component of Sylius can be used in standalone because it’s fully decoupled. Taxation component “know” only know how to calculate taxes • Bundles Symfony bundles. TaxationBundle use taxation component and give access also services, models, ...
  8. Under The Hood

  9. Let’s try to install only a component

  10. Using a component

  11. Admin, Shop And Api Sylius Components Bundles Core Admin Shop

    API • Admin AdminBundle gives backoffice features to e-commerce administration • Shop ShopBundle implements a standard B2C interface • Api AdminApiBundle is an REST API set that operate from Admin perspective
  12. Prerequisites • Unix like system (MacOS or Linux) • PHP

    >= 7.2 • MySQL • Composer • Yarn
  13. Getting started # create symfony project $ composer create-project sylius/sylius-standard

    MyFirstShop $ cd MyFirstShop # install sylius $ bin/console sylius:install # install assets $ yarn install $ yarn build # check installation $ symfony serve $ open http://127.0.0.1:8000/admin
  14. Dashboard Backoffice

  15. None
  16. Shop

  17. In The Real World

  18. Customizations • Models • Forms • Repositories • Factories •

    Controllers • Validations • Menu • Templates • Translations • State Machines • Grids • Fixtures
  19. Plugin Store Extend functionality using plugin: Install via composer composer

    require sylius/shop-api- plugin
  20. Standalone E-Commerce E-Commerce Shop Api Plugin Main App Sylius JWT

    Rest API Call Serialized Data
  21. Shop Api Plugin Calls

  22. References Sylius Documentation https://docs.sylius.com/en/1.6/index.html Shop Api Plugin https://github.com/Sylius/ShopApiPlugin Slack channel

    https://sylius-slackin.herokuapp.com/
  23. Thank You! Questions? https://www.linkedin.com/in/sergiosicari/ https://github.com/sergioska Sergio Sicari Senior Backend Developer

    / DevOps (PED)
  24. PUG Catania - Join Us Telegram t.me/pugct Facebook https://www.facebook.com/groups/PUGCT/ Meetup

    https://www.meetup.com/it-IT/pugCatania-PHP-User-Group-Catania Sito Web https://catania.grusp.org
  25. PUG Catania - Join Us Telegram t.me/pugct Facebook https://www.facebook.com/groups/PUGCT/ Meetup

    https://www.meetup.com/it-IT/pugCatania-PHP-User-Group-Catania Sito Web https://catania.grusp.org