● Zion Boggan
repos/Docket/docs/ACCESSIBILITY.md
zionboggan.com ↗
55 lines · markdown
History for this file →
1
# Docket -  Accessibility & Plain-Language Spec
2
 
3
Hard requirement (PLAN.md §1c): Docket must be usable by **any** citizen -  explicitly an 80-year-old with low vision, low tech-literacy, keyboard-only or imprecise motor control. The forensic dark brand is the *default*, not a barrier. The brand wins by being **usable**, not just sharp.
4
 
5
## The 8 rules (enforce in code / CI)
6
| # | Rule | Number |
7
|---|---|---|
8
| 1 | Contrast on every text/bg pair | **≥ 4.5:1** (≥3:1 large). Dark base is `#121316` (never pure black). Verify with WebAIM checker. |
9
| 2 | Body text size | **≥ 16px** light / **≥ 18px** dark (mono reads smaller). Line-height **1.6** dark / 1.5 light. |
10
| 3 | Touch/click targets | **≥ 44×44px** (padding counts). |
11
| 4 | Focus indicator | **2px solid outline, ≥3:1**, never removed. |
12
| 5 | Keyboard nav | All interactive elements via Tab/Enter/arrows. **No hover-only** (tooltips, menus, the Source link affordance). |
13
| 6 | Plain-language summaries | **≤ 8th-grade Flesch-Kincaid**, ≤20 words/sentence, active voice. Tested in CI. |
14
| 7 | Links & state | **underline + color**, never color alone (color-blind/presbyopia safe). |
15
| 8 | Text-size / mode toggle | Always-visible, labeled, 44×44px. Scales text 1.5-2×, no layout break. |
16
 
17
## Three display modes (one toggle, persisted)
18
1. **Default -  Dark forensic (brand):** ink `#121316` base, paper text, brass rationed, mono. Enforce: every pair ≥4.5:1, body 18px, line-height 1.6, accents muted (no vibrating saturated colors on dark).
19
2. **Readable / Light:** parchment `#F6F4EF` bg, ink text, body 16px, calm saturated accents. The "I just want to read it" mode.
20
3. **High-contrast "Plain Mode":** system sans (not mono), ≥20px, max contrast (black on `#FFFFCC` or inverted), no accent color, uniform weight. One click from anywhere.
21
 
22
**Resolving the brand↔accessibility tension:** keep mono + dark + sparse forensic layout as the default *vibe*; enforce contrast/spacing rigorously; offer Light and Plain modes as frictionless escape hatches. The terminal look is preserved for those who want it; nobody is excluded.
23
 
24
## Plain-language summary template (neutral + legible)
25
```
26
[BILL ID]: [Official Short Title]
27
 
28
What does this bill do?
29
→ ONE sentence, <20 words, active voice, no adjectives.
30
  "The bill requires large employers to report pay data by race and gender."
31
 
32
Who does it affect?
33
→ 2-3 bullets, <10 words each.
34
 
35
When does it take effect?
36
→ Plain date ("January 1, 2027"), not a legal cite.
37
 
38
[ View the full bill on Congress.gov ]   ← source link, rule #1
39
```
40
Banned (jargon + spin): "notwithstanding," "shall/may" legalese, undefined acronyms, double negatives, and any "good/bad/burdensome/finally-closes-a-loophole" framing. **Describe what it does, never whether it's good** -  this is where accessibility meets the neutrality doctrine (NEUTRALITY.md §2, §5).
41
 
42
## Search / lookup for non-experts (the 80-year-old path)
43
- "Look up my state / my rep / my topic" as labeled drop-downs with type-ahead -  not a bare search box.
44
- Suggested pre-built filters as big clickable chips ([My State] · [Topic] · [This Year]); no "did you mean?" cognitive-load prompts.
45
- Search field ≥50px tall, ≥18px font.
46
- Persistent visible **Back**; breadcrumbs with whitespace separators, not `///`.
47
 
48
## CI / definition of done (accessibility)
49
- [ ] axe-core (or equivalent) passes on every page, 0 serious violations
50
- [ ] contrast audit green on all three modes
51
- [ ] keyboard-only walkthrough reaches every interactive element with visible focus
52
- [ ] summaries score ≤ grade 8 (automated Flesch-Kincaid check, runs with the neutrality lint)
53
- [ ] mode toggle persists and never breaks layout
54
 
55
*Source basis: WCAG 2.2 AA/AAA (target-size, focus-visible), plainlanguage.gov / Plain Writing Act, GOV.UK design system, WebAIM.*