Here’s a fast, developer-oriented read of the FOIA.gov home page you pasted, plus a quick QA checklist and a few easy wins.


What this page does (at a glance)

  • Purpose: FOIA.gov’s public landing page for learning about FOIA, searching for publicly available info, and starting a request.
  • Primary calls to action (hero):
    • Learn about the FOIA process → /how-to.html
    • Use the search tool (find public records / the right agency) → /wizard.html
    • Start a request with a specific agency → /agency-search.html
  • Main nav sections:
    • Learn about FOIA (About, How-to, FAQ, Statute, Español)
    • Before you request (Search, Research, Additional resources)
    • Search tool (Wizard + “How it works”)
    • Create a request (direct link)
    • Agency FOIA data (Overview, Annual, Quarterly)
    • CFO Council (overview + committees)
  • Footer essentials:
    • OIP (DOJ) contact + hero image credit
    • Downloads/Developer: FOIA contact list, FOIA dataset, Developer resources, Agency API Spec
    • DOJ policy links (Accessibility, Privacy, Policies, DOJ, USA.gov)

Notable implementation details

  • Design system: USWDS (banner, grid, header/footer styles).
  • A11y features:
    • Skip link (#main), gov banner with “Here’s how you know”
    • Accordion buttons with aria-expanded and aria-controls
    • Glossary panel toggled with proper ARIA (aria-hidden, labelled title)
    • “Return to top” button (keyboard accessible)
  • External link handling: extlink.min.js adds icon + target="_blank" + rel="noopener" for non-DOJ domains (whitelist present).
  • Analytics & surveys:
    • Google Tag Manager (GTM-WSH5Z5MT)
    • DAP (Digital Analytics Program) – dap.digitalgov.gov
    • ForeSee survey gateway
    • Siteimprove analytics
  • Performance/caching:
    • no-cache/pragma: no-cache meta present (ensures fresh content; may reduce caching gains).
    • Consolidated CSS (/foia-style.css?...) and bundled JS for glossary/uswds/landing.
  • Security:
    • .gov + HTTPS banner & messaging
    • External links default to new tab + noopener

Quick QA checklist (functional)

  1. Hero CTA buttons
    • /how-to.html, /wizard.html, /agency-search.html load and are navigable on mobile/desktop.
  2. Accordions (Learn more section)
    • Expand/collapse via keyboard and mouse; aria-expanded toggles correctly.
  3. Glossary toggle
    • “Glossary” button opens/closes panel; search within list filters terms.
  4. External link icon & behavior
    • Non-DOJ links show the external icon and open in a new tab, DOJ/whitelisted stay internal.
  5. Return to top button
    • Appears after scroll; returns focus to #top and scrolls to top.
  6. Header menu (mobile)
    • Hamburger opens/closes; focus is trapped correctly; Escape closes.
  7. Analytics beacons
    • GTM and DAP load; pages still work with scripts disabled (progressive enhancement).
  8. Contrast & focus
    • Ensure visible focus outlines on CTA cards, accordions, glossary toggle, menu items.
  9. “Agency login” link
    • Points to https://admin.foia.gov/user/login and is reachable.

Small, high-impact improvements (if you’re maintaining the page)

  • Add standard social meta: You have DC meta; consider adding Open Graph/Twitter tags (og:title, og:description, og:image, twitter:card) for better link previews.
  • Canonical meta: Add <link rel="canonical" href="https://www.foia.gov/"> (helps search engines avoid duplications).
  • Preconnect hints: To shave a little load time: <link rel="preconnect" href="https://www.googletagmanager.com" crossorigin> <link rel="preconnect" href="https://dap.digitalgov.gov" crossorigin> <link rel="preconnect" href="https://siteimproveanalytics.com" crossorigin>
  • Defer non-critical scripts: Some third-party analytics already async; ensure all are async/defer where safe.
  • Alt text polish: Logos have alt text—keep them concise and non-redundant (e.g., site name is fine; avoid “logo” if nearby text already conveys it).
  • Reduce no-cache if appropriate: If content isn’t rapidly changing, allowing short-term caching of static assets can improve speed without affecting freshness of dynamic data.

Fast links to key flows

  • Learn FOIA basics → /how-to.html
  • FOIA wizard (find public records / right agency) → /wizard.html
  • Start with a specific agency → /agency-search.html
  • FOIA data → /reports.html, /data.html, /quarterly.html
  • Developer resources → /developer/ & /developer/agency-api/

If you want me to audit this for WCAG specifics (headings order, focus management, color contrast, keyboard traps) or to create a performance budget with concrete Lighthouse targets, I can draft that next.