Case

cjira

In gebruik

Een toegankelijke terminal-client voor Jira: toetsenbord- en braille-first, volledig zonder muis te bedienen.

Wat & waarom

Jira's webinterface leunt zwaar op muis, kleur en visuele lay-out — voor wie met een schermlezer of brailleleesregel werkt is dat een muur. cjira is een command-line- en TUI-client voor Jira Data Center die andersom ontworpen is: regelgeoriënteerde uitvoer, de identifier voorop, geen betekenis via kleur alleen, geen popups. Zoeken met JQL, boards, epics, statusovergangen, comments, toewijzen, aanmaken en bewerken — het dagelijkse Jira-werk, volledig vanaf het toetsenbord.

Toegankelijkheid is hier geen laagje achteraf maar hét ontwerpuitgangspunt — precies wat wij bedoelen met toegankelijk bouwen. En het mes snijdt aan twee kanten: dezelfde vlakke, doorpijpbare uitvoer die een brailleleesregel exact laat volgen, maakt de client ook mét beeldscherm sneller dan de webinterface.

Aanpak

  1. Het toegankelijkheidsmodel als spec vastgelegd: regelgeoriënteerd, identifier eerst, geen kleur-als-betekenis, geen popups.
  2. Eerst lezen en zoeken (boards, epics, JQL), daarna pas de schrijfacties: transities, comments, toewijzen, aanmaken, bewerken, archiveren.
  3. Een fullscreen-TUI mét een regel-modus, zodat schermlezer en brailleleesregel de cursor exact volgen.
  4. Gebouwd op de Jira REST API; werkt tegen elke Jira Data Center-installatie.

Techniek

  • Python
  • Jira REST API v2
  • TUI + regel-modus
  • Toetsenbord- & braille-first

Beeld & demo

cjira mine
Active sprint (Sprint 12):
WEB-214  [In Progress]  Story: Contrast van de secundaire knoppen naar 4,5:1 (3 pts)
WEB-198  [In Review]  Bug: Statusmelding wordt niet voorgelezen door NVDA (2 pts)

Backlog:
WEB-209  [To Do]  Task: Focusvolgorde in het bestelformulier herstellen
WEB-187  [To Do]  Story: Skip-link naar de hoofdinhoud (1 pts)
Echte cjira-uitvoer in de toegankelijke regel-modus, hier over voorbeelddata: identifier voorop, status als tekst tussen haken, story-points voluit — een brailleleesregel leest dit regel voor regel.

De volwaardige TUI van cjira — een Alpine-stijl interface die één scherm tegelijk toont en de cursor op de geselecteerde regel parkeert, zodat schermlezer en brailleleesregel regel voor regel meelezen. Echte schermen, hier over voorbeelddata.

  1. CJIRA 0.1   ISSUE INDEX   My issues                                            Issue 1 of 5
    Active sprint (Sprint 12):
    WEB-214  [In Progress]  Story: Contrast van de secundaire knoppen naar 4,5:1 (3 pts)
    WEB-198  [In Review]  Bug: Statusmelding wordt niet voorgelezen door NVDA (2 pts)
    Backlog:
    WEB-209  [To Do]  Task: Focusvolgorde in het bestelformulier herstellen
    WEB-231  [To Do]  Story: Formulierfouten koppelen met aria-describedby (2 pts)
    WEB-187  [To Do]  Story: Skip-link naar de hoofdinhoud (1 pts)
    
    
    
    ? Help       Enter Open   N Next       M Menu       F Filter     C Create     / Search
    O OtherCmds  . Open       P Prev       S Sort       D ShowDone   E Epics      Q Quit
  2. CJIRA 0.1   VIEW ISSUE   WEB-214                                               Issue 1 of 5
    Key          : WEB-214
    Summary      : Contrast van de secundaire knoppen naar 4,5:1
    Type         : Story
    Status       : In Progress
    Sprint       : Sprint 12 (active)
    Priority     : Medium
    Story Points : 3
    Assignee     : Sam Bakker
    Updated      : 2026-07-14T09:30:00.000+0200
    Labels       : toegankelijkheid, wcag-aa
    URL          : https://jira.voorbeeld.local/browse/WEB-214
    
    Description:
    De secundaire knoppen halen 3,1:1 tegen de achtergrond; WCAG 1.4.11 vraagt 4,5:1 voor tekst
    Voorstel: de inkt-tint een stap donkerder in beide thema's.
    
    Comments (1):
    
    [1] Robin de Vries  2026-07-14 10:05
    Getest met NVDA en een brailleleesregel — nu correct.
    
    
    
    ? Help        Enter Edit    N NextMsg     I Index       H Headers     T Transition
    O OtherCmds   . Edit        P PrevMsg     , Back        C Comment     A Assign
  3. CJIRA 0.1   MAIN MENU                                                                1 of 8
    M  My issues      Issues assigned to you
    B  Boards…        Pick which board to work with
    V  Board 480      This board's issues
    A  Active sprint  Issues in the current sprint
    L  Backlog        Issues not yet in a sprint
    E  Epics          Browse epics and their stories
    S  Setup          Change cjira's settings
    /  Search…        Find issues with a JQL query
    
    
    ? Help       Enter Open   P Prev
    O OtherCmds  N Next       Q Quit