layout

01 · 2 camadas empilhadas

Stack vertical fixo no topo. A barra de acessibilidade fica acima (z-index ultra-alto), o header de produto logo abaixo. Total de 80px de altura reservados.

CASA HACKER TEMA claro · escuro · alto contraste FONTE 14 · 16 · 18 libras
produto casa hacker conta
// conteúdo do produto começa aqui

barra de acessibilidade — obrigatória

02 · 32px · topo absoluto

Componente desenvolvido pela própria Casa Hacker: github.com/casahacker/barra-acessibilidade ↗. Não é opcional — todo produto Casa Hacker deve incluir. Já vem ligada por padrão no shell.js deste design system.

12 features WCAG-aligned

featurefunçãoWCAG
tema claro/escuropreferência visual
alto contrasteaumenta diferença texto/fundo1.4.6
fonte 14/16/18px3 tamanhos de texto1.4.4
fonte para dislexiaAtkinson Hyperlegible
régua de leiturabarra horizontal que segue o cursor1.4.8
modo focoescurece elementos secundários1.4.8
cursor ampliadoSVG customizado maior
vlibrastradução em Língua Brasileira de Sinais1.2.6
sem animaçãopausa transitions e animations2.3.3
foco realçadocontorno persistente em elementos focados2.4.7
alvos ampliadosbotões mínimo 44×44px2.5.8
links sublinhadostodos os links com underline1.4.1

override visual Casa Hacker

A barra upstream usa azul IBM (#0F62FE) por padrão. Neste design system fazemos override pros tokens da marca: fundo --ch-dos, ativo --ch-code (verde brand). O override está em styles.css, seção "ACCESSIBILITY BAR".

use

  • Em todo produto Casa Hacker — sem exceção
  • Acima do header de produto · z-index 2147483600
  • Carregar via CDN (jsDelivr) — peso ~30KB minificado
  • Override visual pra alinhar com identidade local

não use

  • Remover ou esconder a barra — quebra a conformidade WCAG
  • Bloquear z-index — outros elementos não podem cobri-la
  • Customizar feature individual sem propor PR upstream
  • Versão antiga sem VLibras — usa sempre o release atual

header dos

03 · 48px · brand + nav

Fundo --ch-dos, texto --ch-css. Brand à esquerda (H pixelado + nome do produto). Ações secundárias à direita (conta, ajuda, links externos).

anatomia completa

04
CASA HACKER · TEMA · FONTE · DISLEXIA · LIBRAS LIBRAS casa hacker / produto CONTA // conteúdo do produto 1 2 3
  1. Barra de acessibilidade · 32px · fundo --ch-dos · z-index 2147483600 · OBRIGATÓRIA
  2. Header dos · 48px · brand à esquerda · ações à direita · sticky logo abaixo da barra
  3. Conteúdo do produto · começa em 80px de offset do topo

variantes do header dos

05

Default

Brand + ações simples à direita. Padrão de sites institucionais e ferramentas pequenas.

Com nav horizontal

Para produtos com seções top-level. Nav entre brand e ações.

Mobile

Hambúrguer + brand + 1 ação. Sidebar vira drawer.

A barra de acessibilidade não tem variante: é sempre a mesma, em todos os produtos, sem customização visual além do override de cor pros tokens da marca.

integração

06

no design system (já incluso)

Este DS já carrega a barra automaticamente via shell.js. Qualquer página que inclua <script src="shell.js"> ganha a barra sem código adicional.

em produto novo

<!-- HTML estático --> <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/casahacker/barra-acessibilidade@v0.1.0/packages/standalone/dist/bar.css"> <script src="https://cdn.jsdelivr.net/gh/casahacker/barra-acessibilidade@v0.1.0/packages/standalone/dist/bar.iife.js" data-auto="true"></script> <!-- depois ajusta offsets do seu layout --> <style> body { padding-top: 32px; } .seu-header-fixo { top: 32px; } </style>

em react / vue / next

Use o pacote npm ou wrappers de framework. Veja o README do repo upstream ↗.

em wordpress

Plugin oficial em plugin-wp/casa-hacker-a11y/ do repo. Faz upload do ZIP via painel de plugins → ativa → configura.

acessibilidade

07 · wcag aa

código

08 · html + css

html base

<!-- 1. barra de acessibilidade · OBRIGATÓRIA --> <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/casahacker/barra-acessibilidade@v0.1.0/packages/standalone/dist/bar.css"> <script src="https://cdn.jsdelivr.net/gh/casahacker/barra-acessibilidade@v0.1.0/packages/standalone/dist/bar.iife.js" data-auto="true" defer></script> <!-- 2. header de produto · 48px sticky abaixo da barra --> <header class="shell-header" role="banner"> <a href="/" class="shell-brand"> <div class="h-mini">...</div> <span>produto</span> </a> <nav class="shell-actions">...</nav> </header>

css overrides — identidade casa hacker

/* sobrescreve cores hardcoded da barra upstream */ .ch-a11y-bar { background: var(--ch-dos) !important; font-family: var(--font-mono) !important; } .ch-a11y-btn--active { background: var(--ch-code) !important; color: var(--ch-dos) !important; } /* offsets de layout */ body { padding-top: 32px; } .shell-header { top: 32px; }