Accessibility
Accessibility statement
Last updated 2026-04-17
We treat accessibility as a property of the site, not a feature of it. That means building with semantic HTML, designing for keyboard and screen-reader users from the start, and treating LLM agents as another user group that deserves a clean way in.
What we target
Our baseline is the W3C Web Content Accessibility Guidelines (WCAG) 2.2 at level AA. We do not claim perfect compliance on every page at every moment, but we design and review against that standard and fix issues when we find them.
What we do
- Semantic HTML landmarks (
header,nav,main,footer) on every page - A visible "Skip to main content" link exposed on keyboard focus, so keyboard users can bypass the primary navigation
- A visible focus ring on every interactive element, matching our accent color
- Colour contrast meeting the AA threshold for body text and interactive elements
- Respect for the
prefers-reduced-motionsystem preference: animations and transitions collapse to near-instant for users who have opted out - Descriptive link text (no "click here")
- Proper heading hierarchy: one
h1per page,h2for sections,h3for subsections - Text is set in a readable size with generous line-height, resizable up to 200% without content loss
LLM and AI accessibility
LLMs and AI agents ingest sites more efficiently when they can read clean markdown. We treat that as an accessibility need, too.
- Every public page has a plain-markdown mirror at the same URL with a
.mdsuffix. For example, /services/coolify-setup-consultant.md is the markdown twin of the Coolify consultant page. - Each HTML page declares the markdown twin via
<link rel="alternate" type="text/markdown">in the head, and exposes a visible "View as Markdown" link in the footer. - A site index at /llms.txt follows the llmstxt.org convention and lists every markdown mirror with a one-line description.
- Our
robots.txtadvertises the markdown mirrors and does not block AI crawlers. We want to be cited correctly.
Known gaps
We will name things we know are not perfect instead of hiding behind vague language.
- The markdown mirrors are authored separately from the
.astropage templates. If a page is edited without updating the markdown mirror, the two can drift. We review both on every substantive copy change, but automation for this is on the roadmap. - We have not run a full automated audit (axe / Lighthouse) yet. We plan to wire one into CI.
- No video content today; when we add any, we will caption it.
Feedback
If something on this site is hard to use with assistive technology, or if an LLM mirror has drifted from the rendered page, please tell us at hello@dacforge.com. We will respond within a few working days and fix issues as quickly as we can.