Skip to main content

Setup

Uses

The tools, stack, and infrastructure running this site and most of my daily work. Updated as things change.

Frontend stack

The core framework running this site.

Nuxt 4โ†—

The full-stack Vue framework. Static site generation via the `github_pages` preset, with file-based routing and server-side OG image rendering.

Vue 3โ†—

Composition API throughout. `<script setup>` with TypeScript, `withDefaults(defineProps<T>())`, and zero class components.

TypeScriptโ†—

Strict mode, enforced via `.nuxt/tsconfig.json`. Types live in `app/types/`, interfaces defined inline in component files.

Tailwind CSSโ†—

Utility-first styling with no `<style>` blocks anywhere in the codebase. Every visual decision is a Tailwind class.

Nuxt Content v3โ†—

Markdown-driven content with Zod-validated collections. Covers blog posts, topics, series metadata, and author profiles.

Testing & quality

How the code stays reliable.

Vitestโ†—

Unit and composable tests with `happy-dom`. Globals enabled, `@` and `~` path aliases wired to `./app/`.

Playwrightโ†—

End-to-end and accessibility tests. `pnpm test:a11y` runs the full a11y suite against the running dev server.

ESLintโ†—

Lint with auto-fix on every save. `pnpm lint` also runs in CI before any deployment so broken formatting never ships.

Prettierโ†—

Code formatting via `pnpm fix`. Consistent output across the whole codebase.

Build tooling

What makes the development workflow fast.

Fast, disk-efficient package manager. `pnpm-lock.yaml` is committed and CI always runs `--frozen-lockfile`.

Storybookโ†—

Component development in isolation. Conditionally loaded via the `STORYBOOK=true` env var so it never affects production builds.

Infrastructure

Version control, hosting, and deployment.

GitHubโ†—

Version control and the hub for everything else. Every repository, pull request, and review lives here.

GitHub Pagesโ†—

Static hosting via `npx nuxi build --preset github_pages`. Free, reliable, and the right fit for a content-heavy site with no dynamic server requirements.

GitHub Actionsโ†—

CI/CD pipeline for building, linting, and deploying. Daily scheduled builds keep content fresh.

Cloudflareโ†—

DNS management for arlon.dev. Handles domain routing to GitHub Pages with zero configuration overhead.

Something custom Self-hosted ยท Self-built ยท Self-maintained

Part of the security layer. More in the Security section below.

Observability

Error tracking, uptime, and notifications.

Sentryโ†—

Error tracking with sourcemap uploads during CI. Sourcemaps are hidden in production but errors still point to the correct file and line number.

UptimeRobotโ†—

Uptime monitoring with alerts when the site goes down. Simple, reliable, and free for the monitoring interval this site needs.

Discordโ†—

Deploy notifications piped directly into a channel. Success and failure both fire, so a broken deployment is never silent.

Security

All handled in-house.

Self-hosted ยท Self-built ยท Self-maintained

Something custom runs here.

Not a third-party service. Not a SaaS dashboard. Built from scratch, deployed on its own infrastructure, and maintained in-house. A full writeup is coming.

Writeup in progress