Sylius - An open-source e-commerce platform
There are many different e-commerce solutions for businesses to choose from. Some businesses prefer out-of-the-box web shops, others require custom-built solutions. The e-commerce field covers all ranges of requirements.
If you are a one-person business, an e-commerce service that requires little to no configuration to get started may be just what you need. PrestaShop, WooCommerce, and Shopify have helped many small shops start their online sales.
If you are a medium-sized business expanding to multiple markets or find that you need to integrate your web shop with many different services such as Entity Resource Planning (ERP) or Content Resource Management (CRM) systems you would need a flexible e-commerce service. Some of the small-scale solutions can be re-configured to suit your needs. Other solutions are flexible from the start and can grow with your business. An example of this is Sylius, a flexible and open-source e-commerce solution.
From no licensing fees
While open-source can come in many flavors, Sylius is an MIT-licensed solution. In essence, this means that it does not require any licensing fees to use or extend to your needs. You may even build your own proprietary solution on top of Sylius, provided you include the copyright notice as specified in the license.
The team behind Sylius also provides a proprietary solution: Sylius Plus, which is paid. This adds additional features as well as technical support.
You have full insight into the codebase and may review any releases that currently exist. On top of this, the Sylius team provides great documentation on how to navigate the different releases for when you want to upgrade to a newer release.
A roadmap exists to provide a better overview of the future development of the e-commerce solution. A quick glance reveals that the new API will be finalized for the shop features by Q1 2023. After this, the admin API will be updated as well as a user guide and UI updates.
A great open-source community exists around Sylius. Whether you are a developer working on customizing Sylius to a business’s needs or you are an administrator maintaining a web shop, there exist the usual open-source channels: Forum, Slack, YouTube, and more.
If you hit upon a unique challenge, there is often someone working on a solution to it - if it has not already been published. Sylius has many different plugins from a range of different companies and developers. Some are paid, and many are free. Explore these plugins at Sylius Store.
A legacy of excellence
Sylius builds on top of Symfony, an excellent open-source framework among stiff competition. Symfony follows a predictable release schedule with a new major version every 2 years, with 4 minor releases in between. Many contributors work to keep the framework up to date and address any issues that arise. The chart below shows the number of commits within a timeframe - how often the codebase is updated. In essence, this shows that work on improving the framework that Sylius rests on never stops.
The same goes for Sylius’s codebase itself, where constant additions and adjustments are being done. The chart below shows the number of lines added (green) and removed (red) since about 2012.
Standout features of Sylius
First and foremost, Sylius is an e-commerce platform that you host according to your needs. It is not a hosted service like Shopify or BigCommerce. Instead, you may use it on your own servers or a cloud service. This means you trade ease of setup with data and infrastructure ownership.
If you have Docker, there is an all-inclusive image you can use right away to have it running on your computer:
docker run --rm -d -p 8080:80 abjorkland/sylius-showcase
Visiting http://localhost:8080/ will show a bare-bones web shop ready to be filled with content. Read more about this image on Docker Hub. You can see how to expose a volume and load Sylius with example data.
A fancy word for the ultimate flexibility - headless means that Sylius can be paired with any frontend you desire. Thanks to the well-documented RESTful API, powered by Open API and API Platform, you can retrieve and update the store’s data as needed.
Dynamic API documentation will be found at http://localhost:8080/api/v2.
We can try to run API requests directly on the documentation page. Authorize any admin requests by clicking on Authorize and then use the suggested email and password to retrieve a JWT token. Sylius (API Platform) will assign the retrieved token to each subsequent request as a bearer token.
If you want to fetch a specific product, the documentation will show the response's structure and its types - as is true for all the standard endpoints in the API.
Rich admin interface
As an administrator or web master, you have access to all the data you need to manage your web shop. At a click of a button you can review placed orders and their states; are they just created, fulfilled, or awaiting payments, or are they ready to be shipped?
Sylius allows you to manage your offerings. Each product may have many different variants - be it a t-shirt in different colors or a dress in different sizes and shapes.
You may manage promotions of different kinds. It can be coupon based with a code of your choosing and a set limit would you require it. Set it as a percentage discount or a fixed price discount - on either a single item or a whole cart.
You have a lot of room to customize your web shop to the way you like it!
Integrates with 3rd party solutions
Ready-made solutions in the form of Sylius plugins exist for integrating payment providers, content management systems, search engines and optimization, marketing and so much more. A registry of available plugins is available at store.sylius.com.
If a plugin doesn’t exist that addresses your needs, Sylius has a core based on the Symfony framework and allows web developers to build new solutions on top of it.
Is Sylius right for you?
While a panacea is great, Sylius is not one! Do you want an out-of-package solution and don't want to think about hosting - then there are other solutions out there. Where Sylius shines is in flexibility. Are your requirements somewhat unique or you place great emphasis on platform ownership, then Sylius just might be up your alley.
Read more about Sylius on their official homepage sylius.com. If you are technical or a happy amateur, feel free to check out my Docker image and take Sylius for a spin.