Last blog posts
Published on 2020-07-23 • Modified on 2020-07-23
In this post, we will see how to add a custom data collector in the Symfony debug bar. The debug bar, also called profiler, is one of the most useful components as it is of great help when developing. We will see a concrete case to help us improving the SEO of a website by displaying meta-information about the current page.
Published on 2020-06-21 • Modified on 2020-10-18
In this post, we will see how to do step by step debugging with Xdebug, Symfony and PHPStorm. We will do a basic example where we will stop the execution of the Symfony code just before rendering a template to check the data passed to it.
Published on 2020-05-15 • Modified on 2020-12-05
In this post, I will introduce you to Cw which is an acronym for "Cache Watcher". Cw is a small Go (Golang) program that watches your Symfony files and warms your cache when needed, so you don't have to wait when refreshing your browser.
Published on 2020-03-28 • Modified on 2020-03-28
In this post, we will see how to set up a CI/CD workflow for a Symfony project thanks to the GitHub actions. It will cover from configuring PHP on the runner host to launching the unit and functional tests of the Symfony application.
Published on 2020-02-19 • Modified on 2020-03-14
In this post, we will see how to use Doctrine repositories as services without adding additional configuration to the services.yaml file.
Published on 2019-12-31 • Modified on 2019-12-31
In this post, we will see how to use the Symfony AbstractController that was introduced in Symfony 3.3/4.1. We will review what we used to do before and the evolutions that were done from symfony 1 to Symfony 5, especially how services were declared and used. Eventually, we will try to understand why this new "Base controller" was introduced.
Published on 2019-12-22 • Modified on 2021-12-24
In this post, we will check all the Symfony best practices listed in the official documentation. For each one, I will say if I agree with it or not and why.
Published on 2019-12-07 • Modified on 2019-12-07
In this post, we will see how to implement a simple honeypot in a Symfony form to avoid spam. We will try it on a newsletter form with a unique email field. We'll also log what is blocked by the trap to check if it works correctly.
Published on 2019-11-16 • Modified on 2020-04-18
In this third and last part, we will continue to improve our search engine. First, we will enhance our elasticsearch stack with Kibana. Then, we will implement an autocomplete using an elasticsearch suggester.
Published on 2019-10-28 • Modified on 2019-10-28
This is the second part of the tutorial. In this post, we will see how to improve our search engine to make is much more relevant. We will use an alias, create a custom command to populate the index. We will tune the search applying boosts to some fields and eventually, we will paginate the result list.