Skip to content
Gabriel.
← All work

This website

A small blog and portfolio built with Next.js and SQLite, running on a Hetzner VPS.

Visit project ↗
  • next.js
  • sqlite
  • hetzner

The site you're looking at. A deliberately small personal site, deployed on a Hetzner VPS.

Stack

  • Next.js (App Router) for pages and the contact API — one codebase.
  • SQLite via Drizzle for the single dynamic feature: the contact form.
  • MDX files in git for all content — no CMS.
  • Docker Compose on a Hetzner VPS, behind Caddy for one-command, TLS-terminated deploys.

What I learned

Keeping the surface area tiny made every decision easier. There's no separate backend, no cloud database, and nothing to babysit.