Drupal developer · Rabat, Morocco
Drupal developer focused on institutional and multilingual websites.
I build and maintain Drupal sites — custom modules, multilingual content, API integrations and version migrations. I maintain AI Content Translator, a contributed module on Drupal.org covered by the security advisory policy.
- Contributed module on Drupal.org
- Covered by the Drupal security advisory policy
- Featured in The Drop Times
AI Content Translator
Automatic translation that respects the work of human translators. It marks the text it generates, so a routine translation run refreshes only its own output and leaves human-written or human-edited translations alone.
- Fingerprints its own output, so human-written or human-edited translations are only replaced when you explicitly ask
- Works with OpenAI, Azure OpenAI, and local OpenAI-compatible servers such as Ollama
- Translates nodes, taxonomy terms and interface strings, with optional recursion into Paragraphs
- Configurable prompt templates and optional per-language glossaries
- Long runs go through Drupal's Batch API
- Status
- Stable release
- Compatibility
- Drupal 11 & 12
- License
- GPL-2.0
- Security
- Advisory policy coverage
“Human-authored or human-edited translations stay untouched unless an overwrite is explicitly requested.”
Expertise
What I work on
Institutional websites
Drupal platforms built for editorial teams, several languages and a long maintenance life.
- Information architecture and content modelling
- Editorial workflows and role-based permissions
- Caching strategy and performance
- Multisite setups on a shared codebase
Custom Drupal modules
Functionality Drupal doesn't ship with, written to core standards so it survives the next major version.
- Hooks, plugins and event subscribers
- Extending contributed modules rather than forking them
- Coding standards and automated tests
- Contributing back to Drupal.org
Multilingual Drupal
Sites that work properly in several languages, including the translation workflow behind them.
- Content, interface and configuration translation
- AI-assisted translation that preserves human work
- Right-to-left layout for Arabic
- Tifinagh script for Amazigh
Migrations & upgrades
Moving content and configuration between Drupal versions without losing data or search rankings.
- Drupal 7 to Drupal 10 and 11
- Migrate API pipelines
- Contributed-module audits
- URL and redirect mapping
APIs & headless Drupal
Drupal connected to the systems around it, or serving content to a separate frontend.
- REST and JSON:API
- Decoupled Drupal with React and Next.js
- Third-party integrations
- Authentication and access control
Maintenance & security
Keeping Drupal sites secure and current over the long run.
- Security release monitoring
- Core and contributed module updates
- Composer and Drush workflows
- Error and performance monitoring
About

I'm a Drupal developer based in Rabat. I work at FORNET, a web agency whose clients are largely public institutions and international organisations, which is where most of my experience with institutional websites comes from — multilingual content, editorial workflows, content modelling and long maintenance cycles.
Before FORNET I worked at Pyxicom on agency web projects, and started out as a .NET developer at ANCFCC, Morocco's land registry and cartography agency.
I contribute back to Drupal where I can. AI Content Translator came out of a practical problem on multilingual projects: automatic translation is useful, but it shouldn't quietly overwrite what a translator wrote.
Experience
Mar 2023 — Present
Rabat web agency building digital platforms for public institutions and international organisations.
Drupal Developer
·PyxicomAug 2022 — Mar 2023
Web and digital agency work — custom sites and client platforms.
.NET Developer — internship
·ANCFCCMay — Jul 2021
Morocco's national land registry and cartography agency.
What I work with
Drupal
- Drupal 9 / 10 / 11
- Custom module development
- Hooks, plugins & event subscribers
- Multilingual & content translation
- Migrations & version upgrades
- Migrate API
- Multisite architecture
- Views
- Paragraphs
- Content moderation
Backend
- PHP 8
- Symfony
- MySQL / MariaDB
- REST
- JSON:API
Frontend
- JavaScript
- React
- Next.js
- Twig
- HTML / CSS
Tools
- Git
- Composer
- Drush
- Docker
- Lando
- Linux
- CI/CD
AI
- OpenAI-compatible APIs
- Claude Code
- AI-assisted development
Languages
- English
- French
- Arabic
- Spanish
Get in touch
Questions about Drupal, AI Content Translator or anything on this site. I reply within a couple of working days.