54,302 blogs · [ { "id": "01a08c66-5936-70b0-9ab1-08315c21a45e", "title": "Why I switched to Astro but not WordPress", "url": "https://zaher.dev/blog/why-i-switched-to-astro/", "published_at": "2026-08-08T09:00:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-08315c693d9d", "title": "Chorus: A Growing Collection of AI Agent Skills", "url": "https://zaher.dev/blog/chorus-multi-model-consensus-for-coding-agents/", "published_at": "2026-07-28T10:00:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-08315cc9141e", "title": "My new Wordpress plugins development workflow", "url": "https://zaher.dev/blog/my-new-wordpress-plugins-development-workflow/", "published_at": "2026-05-05T06:54:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-08315d82fd64", "title": "Building a WordPress Plugin Entirely with AI Agents — In One Week", "url": "https://zaher.dev/blog/building-a-wordpress-plugin-with-ai-agents-in-one-week/", "published_at": "2026-03-03T08:19:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-08315e40b6e4", "title": "Using Kindle as weather display screen", "url": "https://zaher.dev/blog/using-kindle-as-weather-display-screen/", "published_at": "2026-01-04T09:34:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-08315ea7ab62", "title": "Host your own analytics with Umami, Supabase, Hetzner and K3s", "url": "https://zaher.dev/blog/host-your-own-analytics-with-umami-supabase-and-k3s/", "published_at": "2024-12-28T15:30:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-08315f5ad535", "title": "Cloudflare Workers with PostgreSQL: Full Example Using Hono.js", "url": "https://zaher.dev/blog/cloudflare-workers-honojs-and-postgres/", "published_at": "2024-05-04T11:54:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-08315fed7726", "title": "K3s Certificate Rotation: Fix and Renew Expired Certificates", "url": "https://zaher.dev/blog/rotate-your-k3s-certificate/", "published_at": "2024-01-01T18:10:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-083160c278f1", "title": "K3s Storage Class with NFS: Complete Setup Guide", "url": "https://zaher.dev/blog/k3s-with-nfs-storage-class/", "published_at": "2023-11-28T17:41:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-083161077a35", "title": "To Manage or To Host", "url": "https://zaher.dev/blog/to-manage-or-to-host/", "published_at": "2023-07-03T08:29:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-083161245be3", "title": "Local WordPress development on mac", "url": "https://zaher.dev/blog/local-wordpress-development-on-mac/", "published_at": "2023-05-14T13:21:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-083161eb84f7", "title": "New rules for reading books", "url": "https://zaher.dev/blog/new-rules-for-reading-books/", "published_at": "2023-02-05T16:21:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-083162d77b06", "title": "Mastodon on K3s - Part 3", "url": "https://zaher.dev/blog/mastodon-on-k3s-part-3/", "published_at": "2023-01-12T07:58:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-08316319916c", "title": "Mastodon on K3s - Part 2", "url": "https://zaher.dev/blog/mastodon-on-k3s-part-2/", "published_at": "2023-01-10T05:55:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-083163a2b436", "title": "Mastodon on K3s - Part 1", "url": "https://zaher.dev/blog/mastodon-on-k3s-part-1/", "published_at": "2023-01-09T11:25:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-0831642e9b27", "title": "n8n.io on K3s & Cloudflare tunnel", "url": "https://zaher.dev/blog/n8n-on-k3s-cloudflare-tunnel/", "published_at": "2023-01-05T05:06:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-083164f7451a", "title": "Kubernetes terminology", "url": "https://zaher.dev/blog/kubernetes-terminology/", "published_at": "2023-01-03T18:12:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-083165ccdc4a", "title": "Backup Your PostgreSQL databases automatically", "url": "https://zaher.dev/blog/backup-your-postgresql-databases-automatically/", "published_at": "2023-01-03T05:10:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-083166c7168f", "title": "PostgreSQL on K3s", "url": "https://zaher.dev/blog/postgresql-on-k3s/", "published_at": "2023-01-03T04:31:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-0831679c7d1d", "title": "Cloudflare Tunnel on K3s", "url": "https://zaher.dev/blog/cloudflare-tunnel-on-k3s/", "published_at": "2022-12-28T08:03:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-08316885f33e", "title": "MySQL on K3s Cluster", "url": "https://zaher.dev/blog/mysql-on-k3s-cluster/", "published_at": "2022-12-21T04:40:00+00:00" }, { "id": "01a08c66-5936-70b0-9ab1-083168d7f2da", "title": "K3s PI Cluster", "url": "https://zaher.dev/blog/k3s-pi-cluster/", "published_at": "2022-12-20T05:20:00+00:00" } ] posts Claim your blog
Back to Writing | Zaher's Blog
Blog · corpus.blog/blogs/zaher.dev/posts

Writing | Zaher's Blog

zaher.dev

2026

2024

2023

2022