fredmottey.dev
This site. Static, written in Markdown, and gated by the same kind of checks I'd put on a production app.
How it’s built
Pages and posts are Markdown files in a Git repository. Astro turns them into plain HTML with almost no JavaScript. The production build is hosted on Cloudflare Pages.
How it’s tested
Every pull request runs a pipeline with required type, browser, accessibility, and link checks:
- Type and content checks. Front matter is validated against a schema, so a post with a missing date fails the build instead of rendering broken.
- End-to-end tests with Playwright. Every page in the sitemap must load, have a title and a single
h1, and log no console errors, on desktop and mobile viewports. - Accessibility scans with axe-core. Every page, in both light and dark mode, against WCAG 2.2 AA.
- Link checking. Every internal link and asset must resolve. External links are checked weekly so a third-party outage can’t block a deploy.
- Lighthouse CI. Performance, accessibility, best practices and SEO scores have budgets, and a regression produces an advisory warning.