Skip to main contentfusihub

The Engine Behind This Blog

Built with Next.js, Axum (Rust), and Docker — a self-hosted microservices setup powering this blog with speed, control, and modern architecture.

🚀 Why Next.js

This blog runs on a monorepo that supports all the modern frontend frameworks—Next.js, Astro, Remix, React, or Vite. I chose Next.js for its speed, flexibility, and fullstack capabilities. It’s a powerhouse for getting things built fast. But I’m not locked in—Astro and Vite are on my radar for future iterations.

⚙️ Why Axum (Rust)

Next.js handles the frontend like a champ—but backend? Not so much, especially when it comes to scaling and dealing with databases like Postgres.

So I took a cleaner route: the /api routes are offloaded to Axum (Rust) via RPC Bevy style , sitting behind a reverse proxy. Here's why that rocks:

  • Rust is lightning-fast, memory-safe, and built for performance.
  • Axum runs on Tokio, making async tasks a breeze with work stealing.
  • Tower ecosystem gives me a powerful, modular service layer—perfect for backend logic.

Fast, safe, and built to scale.

🐳 Why Docker + Docker Compose

Containers are the backbone of this setup. Here's the deal:

  • No vendor lock-in — each service is containerized and deployable anywhere: serverless, cloud-native, Kubernetes, you name it.
  • Docker networks make communication between services simple and efficient.
  • Kubernetes? Too heavy for this blog. Docker Compose keeps things lightweight and easy to manage.

🐘 Why Postgres

The backend is designed with flexibility and performance in mind—leveraging the power of Axum (Rust) as the service layer that connects everything behind the scenes. Using SeaQuery for expressive, type-safe queries and SQLx for blazing-fast, dynamic SQL execution, the system is built to work seamlessly with a wide range of databases and services:

  • PostgreSQL (top pick 💙)
  • MySQL
  • MongoDB
  • External services like Amazon RDS, Redis and S3

🏡 Why Self-Hosted with Proxmox

This blog runs on my very own homelab — and I love it.

  • It’s a sandbox for me to grow my DevOps and cloud skills.
  • I gave new life to an old 2013 MacBook with Proxmox.
  • Cloudflare Tunnel gives me secure, zero-cost egress—unlike cloud providers that nickel-and-dime you for traffic. Simple, cost-effective, and fun to build.

🔐 WireGuard & Tailscale for Home Networking

Even at home, security matters.

  • WireGuard encrypts home traffic, because privacy should never be optional.
  • Tailscale makes secure networking across all my devices effortless—plus, their free plan is generous. No more headaches. Just encrypted, seamless connectivity.