Shafail Shafa
2014-2026

Case studies

Each one is a full write-up of what the client needed, what I did and how it turned out. These are selected projects, not a complete list. Repeat work of the same kind is written up once rather than every time.

HIGHLIGHTS
AUTOMATION & AI

Production self-hosted n8n with tested disaster recovery

An n8n instance running in production on my own hardened VPS, with a restore I've tested end to end on a clean server.

n8n · Docker · nginx · PostgreSQL 16 · Prometheus · Grafana · Uptime Kuma · Tailscale
AUTOMATION & AI

Private self-hosted AI stack

A private AI setup on self-managed infrastructure. Local models by default, with a cloud API used only where local hardware isn't enough.

Ollama · OpenWebUI · SearXNG · Claude API · Linux · nginx
PHPBB

Five years of phpBB work for one publisher

Six separate phpBB contracts with the same client between 2016 and 2021. It started with a single extension install and ended with a version upgrade that had to carry a whole set of modified extensions along with it.

phpBB · PHP · MySQL · HTML/CSS · Cloudflare · WordPress
PHPBB

A sixteen-year-old phpBB 2 board brought up to the current version

A bulletin board that had been running phpBB 2.0.11 since around 2005, moved onto the current phpBB 3 release with its posts and user base intact.

phpBB 2 · phpBB 3 · PHP · MySQL
PHPBB

A community forum kept current across seven updates

The same client hired me seven times between 2019 and 2024 to update one phpBB board and adjust it as their branding changed.

phpBB · PHP · MySQL · CSS · cPanel · Google AdSense
PHPBB

A forum where no email worked and nobody could reach the admin panel

Signup confirmations and alerts had stopped sending, so new members couldn't register, and then the admin account locked itself out because password resets went through the same broken email.

phpBB · PHP · MySQL · SMTP
WORDPRESS

Old phpBB forum moved into bbPress on WordPress

An old phpBB board moved into bbPress on WordPress. I carried across the whole category structure, the posts, attachments, users and groups, so none of the forum's history got left behind.

phpBB · bbPress · WordPress · PHP · MySQL
WORDPRESS

A WordPress site that turned into a monthly retainer

This one started as a site build with a learning app attached and turned into a standing monthly arrangement to keep everything maintained. By value it's the largest single contract in my Upwork history.

WordPress · PHP · MySQL · HTML/CSS
SERVER CARE

Maintaining a long-standing client's Linux servers

A client I'd been doing phpBB work for since 2016 brought me onto their Linux servers: configuration, maintenance, security policy, backups, and a disaster recovery plan behind them.

Linux · Debian · MySQL · PostgreSQL · Bash · TCP/IP
MIGRATION

Four years of hosting work for a web agency

Forty-eight orders between 2021 and 2025 for one agency: certificate installs, moves between hosting accounts, server setup, and whatever else broke on the sites they host for their own customers.

cPanel · Linux · Let's Encrypt · DNS · WordPress · VPS
SERVER CARE

A site that broke every morning

A small business site went down most mornings, and the owner had been bringing it back by re-uploading one file. The real cause was the hosting company overwriting that file every night.

Apache · .htaccess · PHP · cPanel
MIGRATION

A forum and its image gallery after a server move

A community forum with a separate image gallery had been moved to a new server by someone else. Image links across the board were dead, and a large part of the gallery had never arrived.

phpBB · Piwigo · Plesk · rsync · FTP
PHPBB

A scheduled forum upgrade, and a thumbnail that came out sideways

A version upgrade booked for a fixed hour, so the members could be told when the board would be down, followed by two image problems that both turned out to be somewhere other than phpBB.

phpBB · PHP · GD · EXIF · Cloudflare
PHPBB · 2021 · Upwork

A forum authenticating against the site's own user database

The forum needed to check logins against the main site's database rather than keeping its own separate set of accounts.

phpBB · PHP · MySQL
PHPBB · 2017 · Upwork

Spam signups on a game community forum

Earlier attempts had knocked the spam registrations down for a couple of months, then the problem came back each time. This one had to hold for longer than that.

phpBB · PHP · MySQL · CAPTCHA · antispam extensions
MIGRATION PHPBB · 2022 · Upwork

Recovering a site after a migration lost data

Two contracts three years apart with the same client, both about forum boards that stopped working after someone else moved the server.

phpBB · PHP · MySQL
PHPBB · 2014 · Upwork

Fixing one phpBB board, then building another with custom features

Four contracts with one client in 2014: fixing an existing board, then building a new forum and adding functionality phpBB doesn't ship with.

phpBB · PHP · MySQL · JavaScript · HTML/CSS
WORDPRESS PHPBB · 2025 · Upwork

Adding a Dutch-language forum to a WordPress site

I put a phpBB board in Dutch alongside a client's existing WordPress site and styled it to their branding, so it reads as part of the site rather than software bolted on beside it.

phpBB · WordPress · PHP · MySQL · CSS
PHPBB · 2021 · Upwork

Four rounds of phpBB and theme updates for a design studio

A studio wanted one forum and its purchased theme kept current, rather than calling for help every time something broke. The same update ran four times between 2019 and 2021.

phpBB · PHP · MySQL · CSS · Google AdSense

Do you need something similar?

I’ll get back to you as soon as possible.

Get in touch →