Technologies
Because no 2 projects are ever the same, I've developed an expertise on a wide array of technologies over the years to offer tailored solutions to my clients.
Drupal
WordPress
Shopify
JavaScript
React
WebGL
Projects
Check out some of the projects I've had the chance to work on.
Area of expertise
By working with web agencies, I was able to develop projects in industries as varied as luxury, education and training but also construction and health.
From showcase sites to e-commerce sites connected to internal management tools, I was able to explore a wide range of projects with a focus on quality.
Articles
Read more about web development, my recommendations and tips on particular technologies or about my current experimentations.
TLDR: I created a CLI and webpack plugin that converts HTML files into fully featured, dynamic Gutenberg Blocks. It allows developers to write custom blocks up to 5x faster. You can find it here: HTML To Gutenberg. I love Gutenberg. So do my clients. But like many fellow WordPress developers raised on ACF and the good old way™ of building websites, I was hesitant at first to fully embrace Guten...
Fastify is a Node.js web framework inspired by Express, offering an excellent developer experience thanks to its plugin-based architecture. Having worked extensively with Express in the past, I now use Fastify exclusively for building APIs or web applications when JavaScript is the best fit for the project. When developing a web application with server-side template rendering, I prefer Twig, my...
import path from 'path';
import FastifyPlugin from 'fastify-plugin';
import FastifyView from '@fastify/view';
import twig from 'twig';
// Adjust this to match your file structure
const v...
To simplify the daily management of an e-commerce store, it can be useful to display prices excluding VAT (net prices) directly in the administrative views, especially to ease accounting calculations on a day-to-day basis. By default, Drupal Commerce displays prices including VAT (gross prices) in its views and does not offer an option to show only the net price. This article proposes a solutio...
/**
* Plugin implementation of the 'Excluding VAT Price Formatter' formatter.
*
* @FieldFormatter(
* id = "excluding_vat_price_formatter",
* label = @Translation("Excluding VAT Price ...
As soon as a web project reaches a certain level of complexity, managing the deployment of new features becomes a crucial issue. In the past, developers sometimes worked for weeks on isolated features before merging their work for a new release. Today, deployment cycles are much more frequent; it’s not uncommon for teams working on distinct features to deploy their code several times a day with...
// Pseudo-code
$user = get_user();
$account_creation_time = $user->getCreatedTime();
$birth_country = $user->get('birth_country');
$birth_date = $user->get('birth_date');
if (
(new DateT...
Recently, I decided to delve into the "new" Gutenberg editor of WordPress to finally adopt it and offer a better editing experience to my clients. This epiphany came when I watched the case study videos by 10up about the development of the White House website. Finally, I realized that Gutenberg was not just a tedious assembly of atomic components that were laborious to evolve and maintain. Inst...
add_filter('block_type_metadata_settings', function ($settings, $metadata) {
if (! empty($metadata['render'])) {
$template_path = wp_normalize_path(
realpath(
dirn...
Experiments
Created as a way to improve the designer-developer collaborative experience, this sandbox contains cutting edge creative front-end experiments accumulated over the years.
Since its inception, it has received over 150 000 page views from all developers all over the world.