I'm a freelance full-stack web developer from Rennes 🇫🇷, with over 15 years of experience working with companies and agencies, mostly around PHP, WordPress and JavaScript/TypeScript.
Like many developers, what started as a hobby eventually became my job, largely thanks to open source.
To give back to the community I learned so much from, I try to contribute whenever I stumble on a bug or see a possible improvement in the packages I use. I only release my own when they bring a fresh approach or cover a blind spot. Sometimes it's just something I built for a client project and open sourced because it might help others.
I joined the awesome Timber team as a maintainer in 2021, and I've been trying to build bridges between WordPress and modern PHP ever since.
- page-for-custom-post-type (v1.1.0 - 5 months ago · 📦 2K downloads) — WordPress plugin to set a page for any custom post type archive — just like the native "page for posts" setting.
- acf-country (v3.1.0 - 1 month ago · 📦 101.8K downloads) — ACF Country field - Display a select field of all countries, in any language.
- acf-color-palette (v1.0.0 - 17 hours ago · 📦 1 downloads) — Color palette field for ACF: pick a color from the theme.json palettes, the way the block editor does. Stores the slug, so the value follows the theme.
- wp-hook-kit (v1.0.0 - 10 months ago · 📦 12.6K downloads) — A lightweight WordPress hook helper library. Register hooks before WordPress loads, run callbacks only once, and more.
- wp-symfony-local-server (v2.0.2 - 2 months ago · 📦 1.5K downloads) — A set of hooks to fix running WordPress on Symfony Local Server with local domain names
- block-converter (v0.1.1 - 2 months ago · 📦 52 downloads) — Convert legacy or arbitrary HTML content into WordPress Gutenberg blocks.
- wp-cli-move (v0.1.3 - 5 months ago · 📦 1.4K downloads) — Sync your WordPress content (database and uploads) between stages using the power of WP-CLI aliases.
- wp-cli-fixtures (v0.5.0 - 2 years ago · 📦 14K downloads) — Easily generate custom fake data for WordPress using YAML and WP-CLI
- timber-weblink-extension (2.0.0 - 30 minutes ago · 📦 2 downloads) — Symfony WebLink for Timber: preload(), preconnect() and other Twig functions that send resource hints in a Link HTTP header.
- timber (v2.5.1 - 5 months ago · 📦 4.1M downloads) — Create WordPress themes with beautiful OOP code and the Twig Template Engine
- wp-i18n-twig (v1.1.1 - 1 month ago · 📦 76.5K downloads) — WordPress translations extraction for Twig files with WP-CLI
- timber-dump-extension (v3.0.0 - 7 months ago · 📦 242.9K downloads) — Symfony VarDumper for Timber — adds a nicer {{ dump() }} to your WordPress Twig templates.
- http-cli (v1.1.1 - 5 months ago · 📦 18.3K downloads) — Serverless HTTP client - make requests to PHP scripts on the command line
- dtcg-tokens (v2.0.1 - 3 months ago · 📦 1.9K downloads) — Read, resolve, and render DTCG design tokens at runtime in PHP, with optional Twig and Symfony bridges.
- local-bin-monorepo (v1.1.3 - 2 years ago) — Image optimization & compression binaries (mozjpeg, optipng, cwebp, gifsicle, brotli…) as Composer packages — a PHP port of imagemin's *-bin.
- rangelog (v1.1.1 - 5 months ago · 📦 164 downloads) — Rangelog — resolve and parse changelog notes for any package across GitHub, WordPress.org, GitLab, and in-repo sources, over a
(from, to)version range.
- transmit-2-ssh-config (v3.0.2 - 1 month ago) — Sync your Transmit SFTP favorites with your ssh config file
- @n5s/vite-plugin-mjml — Vite plugin that compiles MJML email templates to HTML with a live dev preview
- @n5s/octofolio — Clean TypeScript interface for GitHub profile data via GraphQL
- @n5s/bruno-wordpress-converter — Convert a WordPress REST API into a Bruno collection
- @n5s/unocss-preset-tokens — UnoCSS preset that turns DTCG design tokens into theme utilities and CSS variables via Terrazzo
- ci: name releases without the v prefix, like their tags on nlemoine/wp-hook-kit — 18 minutes ago
- ci: name releases without the v prefix, like their tags on nlemoine/acf-color-palette — 19 minutes ago
- ci: name releases without the v prefix, like their tags on nlemoine/timber-weblink-extension — 25 minutes ago
- Fixes from a review of src on nlemoine/timber-weblink-extension — 52 minutes ago
- test: count the coverage of the front-end requests on nlemoine/timber-weblink-extension — 3 hours ago
- refactor!: modernize the extension for 2.0 on nlemoine/timber-weblink-extension — 19 hours ago
- feat!: modernize the plugin for 1.0 on nlemoine/acf-color-palette — 19 hours ago
- fix: Read the controller settings through oscarotero/env on nlemoine/lumberjack-core — 1 day ago
- fix: support Monolog 3 alongside Monolog 2 on nlemoine/wp-block-migrations — 2 weeks ago
- Don't require an email for guest authors in the Add New User form validation on humanmade/authorship — 2 weeks ago
- Defer the editor script through the supported strategy arg on humanmade/authorship — 3 weeks ago
- Test against WordPress 7.1 on humanmade/authorship — 3 weeks ago
- refactor(modifiers): drop the watermark fitting kept twice by the merge on Intervention/image-driver-vips — 4 weeks ago
- fix(modifiers): convert inserted elements to the colour space of the image on Intervention/image-driver-vips — 4 weeks ago
- Art4/WP-Requests-PSR18-Adapter — 7 commits — 4 days ago
- humanmade/authorship — 12 commits — 2 weeks ago
- darylldoyle/svg-sanitizer — 2 commits — 2 weeks ago
- Intervention/image-driver-vips — 34 commits — 3 weeks ago
- Intervention/image — 11 commits — 4 weeks ago
- timber/timber — 59 commits — 1 month ago
- johnbillion/query-monitor — 1 commit — 1 month ago
- timber/wp-i18n-twig — 11 commits — 1 month ago
- EasyCorp/EasyAdminBundle — 3 commits — 3 months ago
- MilliPress/MilliCache — 2 commits — 5 months ago
- alleyinteractive/mantle-framework — 2 commits — 5 months ago
- php-imagine/Imagine — 4 commits — 5 months ago
- mindkomm/timmy — 1 commit — 6 months ago
- rjsf-team/react-jsonschema-form — 1 commit — 7 months ago
- janreges/siteone-crawler — 1 commit — 7 months ago
- mindkomm/types — 2 commits — 7 months ago
- jolicode/automapper — 4 commits — 8 months ago
- MahoCommerce/maho-phpstan-plugin — 1 commit — 9 months ago
- konradmichalik/db-sync-tool — 2 commits — 9 months ago
- symfony/symfony — ⭐ 31217 · 1 commit
- unocss/unocss — ⭐ 18988 · 1 commit
- rjsf-team/react-jsonschema-form — ⭐ 15936 · 3 commits
- Intervention/image — ⭐ 14380 · 11 commits
- deployphp/deployer — ⭐ 11122 · 1 commit
- twigphp/Twig — ⭐ 8375 · 1 commit
- php-imagine/Imagine — ⭐ 4473 · 4 commits
- EasyCorp/EasyAdminBundle — ⭐ 4313 · 3 commits
- thephpleague/glide — ⭐ 2630 · 2 commits
- symfony/symfony-docs — ⭐ 2322 · 1 commit
- Yoast/wordpress-seo — ⭐ 2008 · 4 commits
- gordalina/cachetool — ⭐ 1830 · 4 commits
- johnbillion/query-monitor — ⭐ 1781 · 1 commit
- Munter/subfont — ⭐ 1637 · 1 commit
- spatie/image — ⭐ 1367 · 2 commits
- johnbillion/extended-cpts — ⭐ 1026 · 2 commits
- janreges/siteone-crawler — ⭐ 997 · 1 commit
- MyIntervals/emogrifier — ⭐ 946 · 1 commit
- darrenjacoby/intervention — ⭐ 642 · 10 commits
- spatie/http-status-check — ⭐ 600 · 2 commits
Auto-generated with octofolio · last updated 2026-11-05





