Software engineer with 6 years of experience building and running web, mobile and internal business systems, the last 2 as Lead Software Engineer at dsrpt, an Australian digital agency with offices in Kuwait and Adelaide. I lead a team of 5 engineers and own delivery from requirements and architecture through to deployment, server management and the maintenance that follows launch.
Day to day I work in .NET, Laravel and Next.js, deploy with Docker behind Caddy on Linux servers I set up and secure myself, and build for clients in Kuwait, the wider GCC and Australia, most of them bilingual Arabic and English. Outside work I publish open-source tools: an Obsidian plugin in the community marketplace, two npm packages, a Claude Code plugin and a set of VS Code extensions.
|
Languages |
Frontend Also SvelteKit, Blade and Arabic RTL layouts. |
Backend Also ASP.NET Core Web APIs, Filament, KeystoneJS and REST. |
|
Mobile & Desktop VS Code extensions, Obsidian plugins and Chrome extensions. |
Databases |
DevOps & Cloud Also Docker Compose, PHP-FPM, PM2 and zero-downtime Laravel and Node deploys. |
|
Package Managers |
Editors & IDEs |
Tools & Platforms |
|
Integrations Meta WhatsApp Cloud API, Meta and Google Ads APIs, PayPal, Zoho Inventory, Google Search Console and PageSpeed Insights. |
AI and tooling Local models with Ollama, Claude Code plugins and skills, headless Chrome. |
Server and security Ubuntu VPS setup and hardening, SSH key-only access, UFW, fail2ban, unattended upgrades, SafeLine WAF, EDR, TLS, DNS, SPF / DKIM / DMARC / PTR, self-hosted mail and backend services, incident response. |
|
Operating Systems |
Ways of working PRDs and technical specs, Agile / Scrum, ClickUp, JIRA, Figma hand-off, code review, technical SEO and Core Web Vitals. |
|
| Extension | Description | Links |
|---|---|---|
| WP2Code | Claude Code plugin that ports a WordPress site to Laravel, Next.js, Astro or plain HTML by measuring the original and diffing rendered geometry, section by section. | GitHub · Details |
| ai-writing-rules | Claude Code plugin that stops Claude writing like an AI. 29 researched patterns, loaded every session and checked on every file write. | GitHub · Details |
| Project Spec | Claude Code and Cowork plugin that turns a project idea into six planning files, each signed off before the next. Claude Code builds from the last one alone. | GitHub · Details |
| Extension | Description | Links |
|---|---|---|
| SafiCrawl | In-editor website crawler & SEO auditor for VS Code | GitHub · Details · Marketplace |
| Project Pulse | Health monitoring for VS Code projects | GitHub · Details · Marketplace |
| File Explorer | A better file explorer for VS Code | GitHub · Details · Marketplace |
| ClarifAI | Free AI-powered code analysis for VS Code | GitHub · Details · Marketplace |
| ImageMagick | Free VS Code extension for optimizing images | GitHub · Details · Marketplace |
| VS-CRM | A VS Code-native CRM with optimistic mutations, realtime sync, and PDF invoices. Powered entirely by the user's own Supabase database, no middleman, no lock-in. | GitHub · Details · Marketplace |
| Extension | Description | Links |
|---|---|---|
| ImageMagick | Resize, crop, rotate, compress and convert images inside your Obsidian vault. Powered by ImageMagick (WebAssembly), fully offline. | GitHub · Details · Marketplace |
| Vault CRM | A lightweight CRM that lives inside Obsidian. Track clients, deals, and projects, log every interaction, and keep your to-dos, without leaving your vault and without a cloud account. | GitHub · Details · Marketplace |
| S-Calc | A live calculator code block: write expressions and see each line's result, with units, currencies, percentages, and dates. | GitHub · Details · Marketplace |
| Property Reminders | Get a notification when the date and time in a note's property arrives, and open that note with one click. | GitHub · Details · Marketplace |
| S-Color-Inline | Show color swatches next to CSS color values in inline code. | GitHub · Details · Marketplace |
| Safi Site Audit | Run website audits (SEO, content, links, images, security, crawlability and more) and save each one as a Markdown note. Built on Safi Studio Scanner. | GitHub · Details · Marketplace |
| Safi Theme | Warm editorial Obsidian theme with dark and light modes, Space Grotesk headings, and one clay accent. Built from my brand at abdulkadersafi.com. | GitHub · Details · Marketplace |
| Safi V2 Theme | Rounded, clean Obsidian theme: white cards on soft paper, green brand, lime for the active item. Light and dark modes. | GitHub · Details · Marketplace |
| Extension | Description | Links |
|---|---|---|
| Share This | Share the current page to social media, or copy it as a blog-ready Markdown snippet. | GitHub · Details · Chrome Web Store |
| Rummage | A replacement for Chrome's bookmark manager, built for people with thousands of bookmarks. Search saved page text, catch dead links and duplicates. Works on Chrome's own bookmarks, so there's nothing to import and no account. | GitHub · Details · Chrome Web Store |
| Plugin | Description | Links |
|---|---|---|
| Design to Html | A shadcn-style copy-and-own Blade component system for Laravel | GitHub · Details · Figma Still under review |
| Extension | Package Manager | Description | Links |
|---|---|---|---|
| LaralCN-UI | Composer Package | A shadcn-style copy-and-own Blade component system for Laravel | GitHub · Details · Packagist |
| Safi Studio Scanner | NPM Package | Website audit SDK for Node.js. Crawls pages and reports SEO, content, links, images, structured data, security, and crawlability issues. | GitHub · Details · NPM |
| saficss | NPM Package | Tiny runtime CSS-in-JS for plain HTML. Write a style object, get a class name. No build step, no framework, works from a CDN or npm. | GitHub · Details · NPM |
| safi-image | NPM Package | Pure TypeScript image editing for Node and Bun. PNG, JPEG, WebP, GIF, BMP, TIFF. No native binaries. 23 KB core. | GitHub · Details · NPM |
| filament-atelier | Composer Package | A visual page builder for Laravel and Filament. Code-defined blocks, a live preview that is the real page, bilingual output, server-rendered. | GitHub · Details · Packagist |





