# Yassine Fathi > Yassine Fathi | Senior Software Engineer Public Ghost content for AI and LLM tooling. Use `/llms-full.txt` for consolidated page and post context. Append `.md` to any post or page URL to get the content in Markdown (for example, `/example-post.md`). ## Pages - [About](https://fathi.me/about.md) - I’m Yassine Fathi, a Software Engineer specializing in building scalable, distributed systems and developer tooling. I work across the full stack—from crafting clean user interfaces to designing resilient back-end architectures and automating infrastructure. My day-to-day involves writing Go, Ruby,… - [Privacy & Cookies Policy](https://fathi.me/privacy-policy.md) - Last Updated: 10/02/2025 Your Privacy Matters At fathi.me, we prioritize your privacy and transparency. This page explains our approach to cookies and how we handle data. Do We Use Cookies? No, this website does not use cookies for tracking or analytics. We do not store any cookies in your browser… ## Posts - [Dual NVIDIA GPU Passthrough on Linux: What Every Guide Gets Wrong](https://fathi.me/dual-nvidia-gpu-passthrough-on-linux-what-every-guide-gets-wrong.md) - A complete dual-NVIDIA GPU passthrough setup on CachyOS: static VFIO binding, Windows 11, Looking Glass, CPU pinning, hugepages, and the IOMMU address-width bug that made the VM refuse to start. - [Self-Hosting a Chat UI for Your LLMs with OpenWebUI](https://fathi.me/self-hosting-a-chat-ui-for-your-llms-with-openwebui.md) - A self-hosted chat interface that talks to any OpenAI-compatible endpoint. With OIDC SSO, document search, and web browsing. Here's how it fits into a homelab LLM stack. - [Self-Hosting an LLM Gateway with LiteLLM](https://fathi.me/self-hosting-an-llm-gateway-with-litellm.md) - How I built a private OpenAI-compatible gateway that routes to six LLM providers, with SSO, caching, budget alerts, and spend tracking. All self-hosted, all under my control. - [Zerobyte: A Web UI for restic That Replaces Your Backup Scripts](https://fathi.me/zerobyte-restic-web-ui-backup-automation.md) - Zerobyte wraps the restic backup engine in a modern web dashboard—scheduled jobs, visual retention policies, and point-and-click restores. Here’s how to set it up and how it compares to a CLI-only pipeline. - [Build Private AI Agents in Your Homelab with Ollama and n8n](https://fathi.me/private-ai-agents-homelab-ollama-n8n.md) - Run local LLMs with Ollama and wire them into automated workflows with n8n. A practical guide to building private AI agents that monitor logs, triage emails, summarize feeds, and more—all on your own hardware, at zero cost. - [Unified Identity for Your Homelab: Using Pocket ID to Authenticate Every Self-Hosted Service](https://fathi.me/pocket-id-unified-identity-self-hosted-services.md) - Replace scattered logins with a single passkey-based identity provider. A practical guide to deploying Pocket ID and connecting it to Immich, Proxmox, Grafana, and more. - [Building a Fast, Encrypted & Private Backup Pipeline with restic, rest‑server, Hetzner Storage Box & Tailscale VPN](https://fathi.me/building-a-fast-encrypted-private-backup-pipeline-with-restic-rest-server-hetzner-storage-box-tailscale-vpn.md) - A step-by-step guide to building an encrypted, off-site backup pipeline with restic, rest-server, Hetzner Storage Box, and Tailscale VPN. Updated for restic 0.18 with append-only mode and Prometheus monitoring. - [Automating Cloudflare DNS with Traefik Using Traeflare](https://fathi.me/automating-cloudflare-dns-with-traefik-using-traeflare-2.md) - Traeflare watches your Traefik configuration and automatically creates, updates, and removes Cloudflare DNS records to match. No more manual DNS management. - [Decrypting Rails Cookies in Go](https://fathi.me/decrypting-rails-cookies-in-go.md) - A deep dive into the Rails encrypted cookie format and a working Go implementation to decrypt them. Useful when migrating services from Rails to Go or building cross-language session sharing. - [Unlock Secure Freedom - Route All Traffic Through Tailscale + Gluetun](https://fathi.me/unlock-secure-freedom-route-all-traffic-through-tailscale-gluetun.md) - Combine Tailscale’s mesh networking with Gluetun’s VPN container to route all traffic through a secure tunnel. Zero config on client devices, full privacy on the wire. - [Monitor a website for changes](https://fathi.me/monitor-a-website-for-changes.md) - A practical setup for monitoring websites for content changes and getting notified automatically. Self-hosted, private, and customizable. - [Automatically sync Traefik records with Cloudflare DNS using Traeflare](https://fathi.me/automatically-sync-traefik-records-with-cloudflare-dns-using-traeflare.md) - This article has been superseded. See the updated version: Automating Cloudflare DNS with Traefik Using Traeflare. ## Optional - [RSS Feed](https://fathi.me/rss/) - [Sitemap](https://fathi.me/sitemap.xml) - [Full content of pages and posts](https://fathi.me/llms-full.txt)