Hello Sylius community!
Here it is – the long awaited status and roadmap update. I am really sorry for the delay, but keep reading to learn what has been happening with Sylius for the past few months and what is coming!
WebBundle and old UI are going away, completely new shop and admin interfaces, v1.0.0-alpha around the corner; some non-essential features removed, focus on stabilization and docs, v1.0.0-beta by the end of November, which is based on the current velocity and Scrum development process.
For those who have not been following Sylius from the very beginnings, here is a short explanation of where the project is coming from and how far we have gone. Sylius adventure started for me when I was 18. As you can imagine, I did not have the experience needed to run such an ambitious project smoothly from the day 1.
Sylius is a bit more than just a purely technical PHP library. In order to make it a good product you need a lot of eCommerce experience, work on the UI. You have to define a set of features desired by both developers and merchants, sell it commercially… It has really been an amazing challenge, that I am extremely happy to be facing for the last couple of years, but trust me – it can be tough!
Since the first days of the project, Sylius had no other funding than generous customers, who have supported the project by purchasing my services. Basing the Sylius roadmap only on voluntary work of the Open Source contributors was very difficult and I repeatedly set dates for the expected stable Sylius release, but to be perfectly honest with you – it was always wishful thinking.
Luckily, we have managed to build a community, which has been a tremendous help in the whole process. There are multiple companies that have supported Sylius by adopting it early and allowing their developers to contribute. We definitely want to highlight REISS and Hypebeast (HBX.com), who have helped shaping Sylius and constantly supported the project. That’s why we have so many great tools and ideas in Sylius! Still, with many people and brands requesting different features – it was really hard to focus on the right thing…
I always wanted to bring Sylius to its full potential and this has become finally possible thanks to co-founding Lakion two years ago with my friend, Michał. Of course, you need some time to spin up a company, especially if it is your first venture. That being said, we have managed to build a great team of 11 people in a single year – a team that is rocking with Symfony, Behat, phpspec and is crazily excited about eCommerce technology. What is more, we are constantly growing!
This allowed us to finally treat Sylius as a product and we have invested a lot of time, energy and money to focus on the development. During the last 12 Scrum Sprints (6 months) of our development we have managed to reduce a lot of the “product design” debt, that was created during the first years and would be a huge overhead after the stable release, but also we’re able to deliver the whole new UI for the admin panel and shop.
We also finally have the resources to work on the documentation, which have been one of the worst parts of Sylius, as a project. Except working on Sylius core itself, we now have one full time Sylius developer working on the docs.
Except the amazing team, we also got plenty of experience. Over the course of last 2 years – we have worked with businesses of various sizes – from super small retailers to enterprises with millions in revenue. This allowed us to learn what is the real target of Sylius 1.0 and what are we best at doing as a company.
The answer is – highly custom eCommerce applications and products that need to evolve constantly. Sylius is a framework that enables crazy developer productivity and it is meant for businesses with custom requirements or brands that want to constantly evolve and require a technology that supports this strategy. I like to say that Sylius grows with your business, because you can be a start-up company with rapid growth and thanks to our modular architecture and flexibility – Sylius can support you at the stage of MVP and also when developing your product with great speed without the need to sacrifice quality.
This was a bit long, but I wanted to be very open about our successes and mistakes. What is the current status of Sylius project?
During the last months, we have been migrating away from our legacy WebBundle, which used to provide a default web UI for both frontend and backend interfaces. Thanks to actively working with Sylius on commercial projects, we have learned that people use it in many different setups:
Our previous architecture did not support these use-cases properly and we believed this is the future! That’s why our new setup is:
All of this is decoupled, so you can use it in any combination. Read more about the division in the documentation. Sylius-Standard has also been refactored to support this new architecture.
Some of the changes deserve separate blog posts (and will get them), but I’d like to highlight most important points:
We have been getting great results with this new architecture, while still supporting the old WebBundle in the repo. That’s been the case until v0.19.0, but we finally need to turn the switch. I am fully aware that this will be a hit to some of the early adopters and I really appreciate the patience! Templates will mostly be compatible and our new tools are much easier to use.
To summarize what will go away with the switch to the v1.0.0-alpha development branch (which happens with this blog post):
Unfortunately, some of the bundles & features need to be removed from the core. Even with more resources, it is impossible to stabilize them on time and they do not really belong to Sylius core, at least not in version 1.0. We basically want to focus on the core functionality to make it stable and well documented, but also start gathering more feedback during the Beta stage. This means, that following bundles will be removed from the main repo and/or the kernel:
I understand this is rather controversial and some people will be upset, but we really can’t support all of the features in the core and this is not what Sylius is about. The benefit of Sylius is not having as many features as Magento and other mainstream platforms, but being able to customize it rapidly and implement the features you need, tailored specifically to your business. Nevertheless we will have 1.x versions that will bring more to the platform.
I am also sure everyone prefers Sylius with less features, but finally stable and well documented. I have done and seen other people doing things, which are considered impossible right now and I am confident that Sylius will change the way eCommerce is developed. With that in mind, sometimes a strong turn is needed to get back on track and this is what we have been working on for the past months.
Next is more hard work and new challenges every day! But we are prepared. As I have mentioned above, we will be releasing much more posts and documentation about changes and new features, so keep an eye on our blog!
I’d like to thank every single person that was ever involved with Sylius – you are amazing! Some of you may be upset about these BC breaks – I understand and take full responsibility. That being said, I strongly believe that we are on the right path to change the world of eCommerce and hit the mainstream hard! Will you join us?