SlideShare a Scribd company logo
1 of 34
Sylius – modern ecommerce for
Symfony
Antonio Perić-Mažar
14.09.2013, ZgPHP konferencija
Tko sam?
• Antonio Perić-Mažar,
mag. ing. comp.
• CEO and partner @ locastic
• Preko 6 godina iskustva u
razvoj web aplikacija
• Zadnje 3 godine za razvoj
koristi Symfony2 framework
• www.locastic.com
• antonio@locastic.com
• twitter: @antonioperic
Sylius
Sylius
• Pokrenut 2011. godine, Paweł Jędrzejewski
• KnpLabs
• Izgrađen na Symfony2 frameworku
• Open source projekt, MIT licenca
• Doctrine kao ORM
• BDD (Behavior-driven development), TDD (test-driven
development)
– Behat, phpspec
Sylius ispod površine
Sylius ispod površine
• Symfony v.2.3 (LTS)
• Jednostavna i pregledna arhitektura
• Izgrađen od neovisnih komponenti (bundlova) – 19
bundlova
AddresingBundle, CartBundle, CoreBundle, FlowBundle,
InstallerBundle, MoneyBundle, OmnipayBundle,
PaymentsBundle, ProductBundle, PromotionsBundle,
ResourcesBundle, SalesBundle, ShippingBundle,
TaxationBundle, TaxonomiesBUndle, VaribaleProductBUndle,
WebBundle
Sylius ispod površine
• Symfony v.2.3 (LTS)
• Jednostavna i pregledna arhitektura
• Izgrađen od neovisnih komponenti (bundlova) – 19
bundlova
AddresingBundle, CartBundle, CoreBundle, FlowBundle,
InstallerBundle, MoneyBundle, OmnipayBundle,
PaymentsBundle, ProductBundle, PromotionsBundle,
ResourcesBundle, SalesBundle, ShippingBundle,
TaxationBundle, TaxonomiesBUndle, VaribaleProductBUndle,
WebBundle
Sylius ispod površine
• Symfony v.2.3 (LTS)
• Jednostavna i pregledna arhitektura
• Izgrađen od neovisnih komponenti (bundlova) – 19
bundlova
AddresingBundle, CartBundle, CoreBundle, FlowBundle,
InstallerBundle, MoneyBundle, OmnipayBundle,
PaymentsBundle, ProductBundle, PromotionsBundle,
ResourcesBundle, SalesBundle, ShippingBundle,
TaxationBundle, TaxonomiesBUndle, VaribaleProductBUndle,
WebBundle
Sylius ispod površine
• Princip “uzmi što trebaš” ili full stack verziju
• Moguće koristiti bilo koji od 1900 postojećih Symfony2
bundlova
Sylius community
Sylius community
Sylius features
• Upravljanje proizvodima
– Neograničen broj proizvoda
– Složeni proizvodi sa opisnim vrijednostima
(atributima) i svojstvima
– Više varijanti jednog proizvoda
– Kreiranja prototipa proizvoda
Sylius features
• Kategorije proizvoda
– Stablasta struktura (parent-child)
– Izlist proizvoda po kategoriji, proizvođaču...
• Upravljanje promocijama
– Početak, kraj promocije
– Pravila promocije (npr. 10% popust na kupovinu
više od 5 proizvoda...)
Sylius features
• Upravljanje skladištem
– Praćenje u stvarnom vremenu
– Proizvodi dostupni na zahtjev
– Praćenje skladišta pojedinog proizvoda
– Jednostavno upravljanje
Sylius features
• Upravljanje porezima
– Rad sa složenim pravilima oporezivanja
– Različite kategorije poreza za različite proizvode
i područja
– Porez uključen u cijenu
Sylius features
• Mali zahtjevi za hosting
– Sylius zahtjevi = Symfony2 zahtjevi
– Moguć smještaj na share hosting
– Jednostavno puštanje u produkciju putem
capifonya
Sylius features
• Free!!!
– Kompletno open source
– MIT licenca
– Trenutno nema plaćene verzije
Sylius features
• Kompletno admin sučelje za upravljanje web
trgovinom
Sylius prilagodba
• Može se izmjeniti apsolutno sve: od modela, logike,
viewa....
• Prilagodba je prilično jednostavna (uz malo veće
poznavanje Sf2)
• Prilagodba logike unutar bilo kojeg servisa
• Events (događaji)
• Prilagodba Twig predložaka
• Koristi sve Symfony2 best practices smjernice
Sylius prilagodba
Sylius prilagodba
Sylius prilagodba
Sylius prilagodba
Sylius instalacija
// download composer
curl -sS https://getcomposer.org/installer | php
Sylius instalacija
// download composer
curl -sS https://getcomposer.org/installer | php
//download sylius
composer create-project-s sylius dev / sylius
Sylius instalacija
// download composer
curl -sS https://getcomposer.org/installer | php
//download sylius
composer create-project-s sylius dev / sylius
// install sylius
cd sylius
php app/console sylius:install
Sylius instalacija
DEMO
Zvuči odlično! Gdje je problem?
Zvuči odlično! Gdje je problem?
• Sylius je trenutno u verziji 0.1.0
• Beta još uvijek nije izašla (kraj 2013, SymfonyCon)
• Ne zna se kada će biti verzija 1.0
• Bugovi
• Nedovršene komponente (npr. Kod promocija kuponi)
• Nedostatak modula za plaćanje
• Nedostatak naprednijeg CRM sustava
• Nedostatak templeting sustava
Planovi?
• Integracija modula za plaćanje
• Dorađivanje checkout procesa
• Dodavanje notifikacijskog sustava
• RESTful API
• Redizajn
• Dokumentacija
• Prijevodi
• Beta!
Zaključak
• Sylius je zanimljiv open source projekt, koji sigurno
ima budućnost
• Iako nije niti u beti, veliki broj developera ga koristi
za implementaciju web trgovina po mjeri
• Trenutno ga možemo svrstati u kategoriju
ecommerce frameworka, nikako aplikaciju
Pitanja?
Hvala!!!
:)

More Related Content

Similar to Sylius - moderno ecommerce rješenje na Symfony2 frameworku

Symfony2 – kome je namijenjen i zašto ga
Symfony2 – kome je namijenjen i zašto gaSymfony2 – kome je namijenjen i zašto ga
Symfony2 – kome je namijenjen i zašto gaAntonio Peric-Mazar
 
Zašto nam treba PaaS u Srcu?
Zašto nam treba PaaS u Srcu?Zašto nam treba PaaS u Srcu?
Zašto nam treba PaaS u Srcu?Denis Kranjčec
 
Kako pretvoriti server_sobu_u_cloud
Kako pretvoriti server_sobu_u_cloudKako pretvoriti server_sobu_u_cloud
Kako pretvoriti server_sobu_u_cloudDubravko Marak
 
KulenDayz 2014 - Migracija u Cloud, da li bas sve znate o softveru koji trenu...
KulenDayz 2014 - Migracija u Cloud, da li bas sve znate o softveru koji trenu...KulenDayz 2014 - Migracija u Cloud, da li bas sve znate o softveru koji trenu...
KulenDayz 2014 - Migracija u Cloud, da li bas sve znate o softveru koji trenu...Tomislav Lulic
 
Kako pretvoriti server_sobu_u_cloud
Kako pretvoriti server_sobu_u_cloudKako pretvoriti server_sobu_u_cloud
Kako pretvoriti server_sobu_u_cloudDubravko Marak
 
Office 365 u malim tvrtkama s poslovne strane
Office 365 u malim tvrtkama s poslovne straneOffice 365 u malim tvrtkama s poslovne strane
Office 365 u malim tvrtkama s poslovne straneTomislav Lulic
 

Similar to Sylius - moderno ecommerce rješenje na Symfony2 frameworku (7)

Symfony2 – kome je namijenjen i zašto ga
Symfony2 – kome je namijenjen i zašto gaSymfony2 – kome je namijenjen i zašto ga
Symfony2 – kome je namijenjen i zašto ga
 
Zašto nam treba PaaS u Srcu?
Zašto nam treba PaaS u Srcu?Zašto nam treba PaaS u Srcu?
Zašto nam treba PaaS u Srcu?
 
JavaCro'15 - API as a new architecture - Miroslav Rešetar
JavaCro'15 - API as a new architecture - Miroslav RešetarJavaCro'15 - API as a new architecture - Miroslav Rešetar
JavaCro'15 - API as a new architecture - Miroslav Rešetar
 
Kako pretvoriti server_sobu_u_cloud
Kako pretvoriti server_sobu_u_cloudKako pretvoriti server_sobu_u_cloud
Kako pretvoriti server_sobu_u_cloud
 
KulenDayz 2014 - Migracija u Cloud, da li bas sve znate o softveru koji trenu...
KulenDayz 2014 - Migracija u Cloud, da li bas sve znate o softveru koji trenu...KulenDayz 2014 - Migracija u Cloud, da li bas sve znate o softveru koji trenu...
KulenDayz 2014 - Migracija u Cloud, da li bas sve znate o softveru koji trenu...
 
Kako pretvoriti server_sobu_u_cloud
Kako pretvoriti server_sobu_u_cloudKako pretvoriti server_sobu_u_cloud
Kako pretvoriti server_sobu_u_cloud
 
Office 365 u malim tvrtkama s poslovne strane
Office 365 u malim tvrtkama s poslovne straneOffice 365 u malim tvrtkama s poslovne strane
Office 365 u malim tvrtkama s poslovne strane
 

More from Antonio Peric-Mazar

You call yourself a Senior Developer?
You call yourself a Senior Developer?You call yourself a Senior Developer?
You call yourself a Senior Developer?Antonio Peric-Mazar
 
Using API Platform to build ticketing system #symfonycon
Using API Platform to build ticketing system #symfonyconUsing API Platform to build ticketing system #symfonycon
Using API Platform to build ticketing system #symfonyconAntonio Peric-Mazar
 
Using API platform to build ticketing system (translations, time zones, ...) ...
Using API platform to build ticketing system (translations, time zones, ...) ...Using API platform to build ticketing system (translations, time zones, ...) ...
Using API platform to build ticketing system (translations, time zones, ...) ...Antonio Peric-Mazar
 
Are you failing at being agile? #digitallabin
Are you failing at being agile? #digitallabinAre you failing at being agile? #digitallabin
Are you failing at being agile? #digitallabinAntonio Peric-Mazar
 
Symfony 4: A new way to develop applications #ipc19
Symfony 4: A new way to develop applications #ipc19Symfony 4: A new way to develop applications #ipc19
Symfony 4: A new way to develop applications #ipc19Antonio Peric-Mazar
 
A year with progressive web apps! #webinale
A year with progressive web apps! #webinaleA year with progressive web apps! #webinale
A year with progressive web apps! #webinaleAntonio Peric-Mazar
 
The UI is the THE application #dpc19
The UI is the THE application #dpc19The UI is the THE application #dpc19
The UI is the THE application #dpc19Antonio Peric-Mazar
 
Symfony 4: A new way to develop applications #phpsrb
 Symfony 4: A new way to develop applications #phpsrb Symfony 4: A new way to develop applications #phpsrb
Symfony 4: A new way to develop applications #phpsrbAntonio Peric-Mazar
 
A year with progressive web apps! #DevConMU
A year with progressive web apps! #DevConMUA year with progressive web apps! #DevConMU
A year with progressive web apps! #DevConMUAntonio Peric-Mazar
 
Service workers are your best friends
Service workers are your best friendsService workers are your best friends
Service workers are your best friendsAntonio Peric-Mazar
 
Building APIs in an easy way using API Platform
Building APIs in an easy way using API PlatformBuilding APIs in an easy way using API Platform
Building APIs in an easy way using API PlatformAntonio Peric-Mazar
 
Symfony4 - A new way of developing web applications
Symfony4 - A new way of developing web applicationsSymfony4 - A new way of developing web applications
Symfony4 - A new way of developing web applicationsAntonio Peric-Mazar
 
Build your business on top of Open Source
Build your business on top of Open SourceBuild your business on top of Open Source
Build your business on top of Open SourceAntonio Peric-Mazar
 
Building APIs in an easy way using API Platform
Building APIs in an easy way using API PlatformBuilding APIs in an easy way using API Platform
Building APIs in an easy way using API PlatformAntonio Peric-Mazar
 
Lessons learned while developing with Sylius
Lessons learned while developing with SyliusLessons learned while developing with Sylius
Lessons learned while developing with SyliusAntonio Peric-Mazar
 
Drupal8 for Symfony developers - Dutch PHP
Drupal8 for Symfony developers - Dutch PHPDrupal8 for Symfony developers - Dutch PHP
Drupal8 for Symfony developers - Dutch PHPAntonio Peric-Mazar
 
Drupal8 for Symfony Developers (PHP Day Verona 2017)
Drupal8 for Symfony Developers (PHP Day Verona 2017)Drupal8 for Symfony Developers (PHP Day Verona 2017)
Drupal8 for Symfony Developers (PHP Day Verona 2017)Antonio Peric-Mazar
 

More from Antonio Peric-Mazar (20)

You call yourself a Senior Developer?
You call yourself a Senior Developer?You call yourself a Senior Developer?
You call yourself a Senior Developer?
 
Using API Platform to build ticketing system #symfonycon
Using API Platform to build ticketing system #symfonyconUsing API Platform to build ticketing system #symfonycon
Using API Platform to build ticketing system #symfonycon
 
Using API platform to build ticketing system (translations, time zones, ...) ...
Using API platform to build ticketing system (translations, time zones, ...) ...Using API platform to build ticketing system (translations, time zones, ...) ...
Using API platform to build ticketing system (translations, time zones, ...) ...
 
Are you failing at being agile? #digitallabin
Are you failing at being agile? #digitallabinAre you failing at being agile? #digitallabin
Are you failing at being agile? #digitallabin
 
Symfony 4: A new way to develop applications #ipc19
Symfony 4: A new way to develop applications #ipc19Symfony 4: A new way to develop applications #ipc19
Symfony 4: A new way to develop applications #ipc19
 
A year with progressive web apps! #webinale
A year with progressive web apps! #webinaleA year with progressive web apps! #webinale
A year with progressive web apps! #webinale
 
The UI is the THE application #dpc19
The UI is the THE application #dpc19The UI is the THE application #dpc19
The UI is the THE application #dpc19
 
Symfony 4: A new way to develop applications #phpsrb
 Symfony 4: A new way to develop applications #phpsrb Symfony 4: A new way to develop applications #phpsrb
Symfony 4: A new way to develop applications #phpsrb
 
REST easy with API Platform
REST easy with API PlatformREST easy with API Platform
REST easy with API Platform
 
A year with progressive web apps! #DevConMU
A year with progressive web apps! #DevConMUA year with progressive web apps! #DevConMU
A year with progressive web apps! #DevConMU
 
Service workers are your best friends
Service workers are your best friendsService workers are your best friends
Service workers are your best friends
 
Progressive Web Apps are here!
Progressive Web Apps are here!Progressive Web Apps are here!
Progressive Web Apps are here!
 
Building APIs in an easy way using API Platform
Building APIs in an easy way using API PlatformBuilding APIs in an easy way using API Platform
Building APIs in an easy way using API Platform
 
Symfony4 - A new way of developing web applications
Symfony4 - A new way of developing web applicationsSymfony4 - A new way of developing web applications
Symfony4 - A new way of developing web applications
 
Build your business on top of Open Source
Build your business on top of Open SourceBuild your business on top of Open Source
Build your business on top of Open Source
 
Building APIs in an easy way using API Platform
Building APIs in an easy way using API PlatformBuilding APIs in an easy way using API Platform
Building APIs in an easy way using API Platform
 
Lessons learned while developing with Sylius
Lessons learned while developing with SyliusLessons learned while developing with Sylius
Lessons learned while developing with Sylius
 
Drupal8 for Symfony developers - Dutch PHP
Drupal8 for Symfony developers - Dutch PHPDrupal8 for Symfony developers - Dutch PHP
Drupal8 for Symfony developers - Dutch PHP
 
Drupal8 for Symfony Developers (PHP Day Verona 2017)
Drupal8 for Symfony Developers (PHP Day Verona 2017)Drupal8 for Symfony Developers (PHP Day Verona 2017)
Drupal8 for Symfony Developers (PHP Day Verona 2017)
 
Drupal8 for Symfony Developers
Drupal8 for Symfony DevelopersDrupal8 for Symfony Developers
Drupal8 for Symfony Developers
 

Sylius - moderno ecommerce rješenje na Symfony2 frameworku

  • 1. Sylius – modern ecommerce for Symfony Antonio Perić-Mažar 14.09.2013, ZgPHP konferencija
  • 2. Tko sam? • Antonio Perić-Mažar, mag. ing. comp. • CEO and partner @ locastic • Preko 6 godina iskustva u razvoj web aplikacija • Zadnje 3 godine za razvoj koristi Symfony2 framework • www.locastic.com • antonio@locastic.com • twitter: @antonioperic
  • 3.
  • 5. Sylius • Pokrenut 2011. godine, Paweł Jędrzejewski • KnpLabs • Izgrađen na Symfony2 frameworku • Open source projekt, MIT licenca • Doctrine kao ORM • BDD (Behavior-driven development), TDD (test-driven development) – Behat, phpspec
  • 7. Sylius ispod površine • Symfony v.2.3 (LTS) • Jednostavna i pregledna arhitektura • Izgrađen od neovisnih komponenti (bundlova) – 19 bundlova AddresingBundle, CartBundle, CoreBundle, FlowBundle, InstallerBundle, MoneyBundle, OmnipayBundle, PaymentsBundle, ProductBundle, PromotionsBundle, ResourcesBundle, SalesBundle, ShippingBundle, TaxationBundle, TaxonomiesBUndle, VaribaleProductBUndle, WebBundle
  • 8. Sylius ispod površine • Symfony v.2.3 (LTS) • Jednostavna i pregledna arhitektura • Izgrađen od neovisnih komponenti (bundlova) – 19 bundlova AddresingBundle, CartBundle, CoreBundle, FlowBundle, InstallerBundle, MoneyBundle, OmnipayBundle, PaymentsBundle, ProductBundle, PromotionsBundle, ResourcesBundle, SalesBundle, ShippingBundle, TaxationBundle, TaxonomiesBUndle, VaribaleProductBUndle, WebBundle
  • 9. Sylius ispod površine • Symfony v.2.3 (LTS) • Jednostavna i pregledna arhitektura • Izgrađen od neovisnih komponenti (bundlova) – 19 bundlova AddresingBundle, CartBundle, CoreBundle, FlowBundle, InstallerBundle, MoneyBundle, OmnipayBundle, PaymentsBundle, ProductBundle, PromotionsBundle, ResourcesBundle, SalesBundle, ShippingBundle, TaxationBundle, TaxonomiesBUndle, VaribaleProductBUndle, WebBundle
  • 10. Sylius ispod površine • Princip “uzmi što trebaš” ili full stack verziju • Moguće koristiti bilo koji od 1900 postojećih Symfony2 bundlova
  • 13. Sylius features • Upravljanje proizvodima – Neograničen broj proizvoda – Složeni proizvodi sa opisnim vrijednostima (atributima) i svojstvima – Više varijanti jednog proizvoda – Kreiranja prototipa proizvoda
  • 14. Sylius features • Kategorije proizvoda – Stablasta struktura (parent-child) – Izlist proizvoda po kategoriji, proizvođaču... • Upravljanje promocijama – Početak, kraj promocije – Pravila promocije (npr. 10% popust na kupovinu više od 5 proizvoda...)
  • 15. Sylius features • Upravljanje skladištem – Praćenje u stvarnom vremenu – Proizvodi dostupni na zahtjev – Praćenje skladišta pojedinog proizvoda – Jednostavno upravljanje
  • 16. Sylius features • Upravljanje porezima – Rad sa složenim pravilima oporezivanja – Različite kategorije poreza za različite proizvode i područja – Porez uključen u cijenu
  • 17. Sylius features • Mali zahtjevi za hosting – Sylius zahtjevi = Symfony2 zahtjevi – Moguć smještaj na share hosting – Jednostavno puštanje u produkciju putem capifonya
  • 18. Sylius features • Free!!! – Kompletno open source – MIT licenca – Trenutno nema plaćene verzije
  • 19. Sylius features • Kompletno admin sučelje za upravljanje web trgovinom
  • 20. Sylius prilagodba • Može se izmjeniti apsolutno sve: od modela, logike, viewa.... • Prilagodba je prilično jednostavna (uz malo veće poznavanje Sf2) • Prilagodba logike unutar bilo kojeg servisa • Events (događaji) • Prilagodba Twig predložaka • Koristi sve Symfony2 best practices smjernice
  • 25. Sylius instalacija // download composer curl -sS https://getcomposer.org/installer | php
  • 26. Sylius instalacija // download composer curl -sS https://getcomposer.org/installer | php //download sylius composer create-project-s sylius dev / sylius
  • 27. Sylius instalacija // download composer curl -sS https://getcomposer.org/installer | php //download sylius composer create-project-s sylius dev / sylius // install sylius cd sylius php app/console sylius:install
  • 29. Zvuči odlično! Gdje je problem?
  • 30. Zvuči odlično! Gdje je problem? • Sylius je trenutno u verziji 0.1.0 • Beta još uvijek nije izašla (kraj 2013, SymfonyCon) • Ne zna se kada će biti verzija 1.0 • Bugovi • Nedovršene komponente (npr. Kod promocija kuponi) • Nedostatak modula za plaćanje • Nedostatak naprednijeg CRM sustava • Nedostatak templeting sustava
  • 31. Planovi? • Integracija modula za plaćanje • Dorađivanje checkout procesa • Dodavanje notifikacijskog sustava • RESTful API • Redizajn • Dokumentacija • Prijevodi • Beta!
  • 32. Zaključak • Sylius je zanimljiv open source projekt, koji sigurno ima budućnost • Iako nije niti u beti, veliki broj developera ga koristi za implementaciju web trgovina po mjeri • Trenutno ga možemo svrstati u kategoriju ecommerce frameworka, nikako aplikaciju