Strictly opinionated Docusaurus theme that enforces Hoverkraft branding and accessibility standards.
@hoverkraft/docusaurus-theme delivers a production-ready Hoverkraft-branded experience for every Docusaurus documentation project. The theme removes customization levers so that every property stays synchronized with the official Hoverkraft design system, accessibility bar, and editorial tone.
- Enforced branding: Colors, typography, spacing, and component styling sourced from the Hoverkraft Branding Guidelines.
 - Accessibility-first: Built to meet WCAG 2.1 Level AA, with detailed practices captured in 
ACCESSIBILITY.md. - Responsive layout: Mobile-first breakpoints and fluid components covering desktop, tablet, and handset experiences.
 - Shared components: Header, footer, hero, feature grid, buttons, and layout primitives with consistent semantics.
 - Print-friendly defaults: Print styles remove noise while preserving content hierarchy.
 
- Public docs site content lives in 
packages/docsand is sourced frompackages/docs/content. - Generated static output is emitted to 
packages/docs/buildduring CI and local testing. - Component usage and configuration examples are organized under 
packages/docs/content/componentsandpackages/docs/content/configuration. 
| Package | Description | 
|---|---|
packages/theme | 
Source for the published @hoverkraft/docusaurus-theme package (TypeScript, compiled to lib/). | 
packages/docs | 
Docusaurus site showcasing the theme, used for QA and documentation. | 
npm install @hoverkraft/docusaurus-themeAdd the theme to your Docusaurus configuration:
// docusaurus.config.js
module.exports = {
  // ...other config
  themes: ["@hoverkraft/docusaurus-theme"],
};The theme is opinionated by design and intentionally exposes no customization knobs.
Use npm workspaces to manage both packages in the monorepo:
npm install                              # Install workspace dependencies
npm run lint --workspaces                # Run ESLint across packages
npm run build --workspaces               # Build theme and docs outputs
npm run start --workspace=@hoverkraft/hoverkraft-theme-docs  # Launch the docs site- Run builds before publishing or submitting pull requests to ensure 
packages/theme/libis up to date. - Accessibility changes must be mirrored in documentation updates; see 
ACCESSIBILITY.mdfor the audit checklist. 
npm run test --workspaces                # Execute ts-jest suites
npm run test:ci --workspaces             # Serial test run for CI environments
npm run lint --workspaces                # Linting serves as static analysis guardrail- Theme unit tests are located in 
packages/theme/src/__tests__. - The docs site can be smoke-tested locally with 
npm run start --workspace=@hoverkraft/hoverkraft-theme-docs. 
- Update semantic versioning in 
packages/theme/package.json. - Regenerate 
packages/theme/libvianpm run build --workspaces. - Validate docs output with 
npm run build --workspace=@hoverkraft/hoverkraft-theme-docswhen content changes. - Publish the theme package via your chosen registry workflow (GitHub Actions or manual 
npm publish). 
Please review CONTRIBUTING.md for accessibility requirements, review expectations, and code of conduct.
Questions or issues? Open an issue in the GitHub repository or start a discussion.
MIT License — see LICENSE for details.