This is my first “lockdown” week-end after a week of confinement. I’m not alone. Most of us are confined now. Most of the world is confined or will be very soon.

I won’t go outside this week-end and that’s fine.

I’m lucky. I share my life with my wife and…

We get a lot of positive feedback on Symfony 4. You love the new directory structure. You love the simplicity of using services without configuring anything. And you love the automation that Flex provides. It makes me happy and proud.

But one issue I hear sometimes is that it is…

Performance is an interesting and sensitive topic. Suffice to say that most projects should not care too much; modern PHP frameworks are fast enough for most use cases and projects. And PHP 7 performance improvements help a lot as well. …

Symfony 4 is just around the corner. And Symfony Flex is one of the main selling points for the upgrade. Developers love the new philosophy. And a lot of changes happened since my last blog post. Let me recap the recent changes that you might not be aware of. …

Update: This article has been updated to add missing steps.

After a long discussion in the community, the directory structure has been slightly changed.

etc/ was renamed to config/, and web/ to public/. My blog posts about Symfony 4 have just been updated to reflect these changes.

If you already have a project using Symfony Flex, upgrading is as simple as:

  • Renaming etc/ to config/;
  • Renaming web/ to public/;
  • Updating your web server configuration to take into account the new public/ directory;
  • Upgrading symfony/flex to the latest version;
  • Update composer.json to replace %WEB_DIR% to %PUBLIC_DIR%;
  • Update the content of src/Kernel.php with the one from the updated recipe;
  • Done.

Originally published at

Time to test Symfony 4… or at least let’s test the experience of developing Symfony 4 projects with Symfony 3.3. Keep in mind that all the tools are in preview mode. Features might evolve over time. I’m waiting for your feedback! The first stable version of Symfony Flex will not…

Last week, I published the repositories for the Symfony recipes. The main repository is at, and the contrib one at Both are public. Additions and feedback welcomed.

Today, I want to share with you a small recording I have just made that shows how it feels to use Symfony Flex when creating a new project. It also demonstrates how to add more dependencies and illustrate the auto-configuration part I have written about in my previous blogs posts about Symfony 4. Instead of creating a classical website, this video levers the API Platform recipe recently added to create an API in just a few commands.

Symfony Flex in action to create an API project

Exciting, right?

Symfony Flex is not Open-Sourced yet, but I can already feel the excitement in the community. I have also received some feedback via Twitter, Slack, and email during the last few days. That makes me really happy!

Everybody knows that I like to tease. Trying to build the momentum on…

Symfony 4’s most “innovative” feature is the way it drives the day-to-day application management. No more tedious copy/paste from README files. No more boilerplate code. Automation to the max. On a curated list of Composer packages.

Symfony Flex

Symfony 4 is powered by Symfony Flex, a deceptively simple but powerful Composer plugin…

Symfony 3 came with a slightly different directory structure than Symfony 2. Symfony 4 will also come with a reworked directory structure. Mostly incremental adjustments to support new features and best practices.

The Symfony 3 directory structure introduced a more standard Unix-like directory structure, with less sub-directories. …

Fabien Potencier

founder and CEO @SensioLabs and @blackfireio, founder and project lead @Symfony

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store