kitodo / kitodo-production

Kitodo.Production is a workflow management tool for mass digitization and is part of the Kitodo Digital Library Suite.
http://www.kitodo.org/software/kitodoproduction/
GNU General Public License v3.0
64 stars 63 forks source link

Accessibility (Barrierefreiheit) #5890

Open solth opened 10 months ago

solth commented 10 months ago

Is your feature request related to a problem? Please describe. Kitodo.Production does currently not have sufficient accessibility support.

Describe the solution you'd like Kitodo.Production should support all relevant accessibility requirements. This entails - but is not necessarily limited to - several points like color schemes with high color contrasts to ensure readability, support for screen readers by assigning alt and title tags to corresponding UI components, meaningful link texts, defining a tab order for traversing through input elements in a well-defined and sensible order and creating interactive UI elements with CSS rather than Javascript.

Additional context Several tools exist to support developing accessibile/barrier-free web applications, like

stefanCCS commented 10 months ago

I would add two work packages: 1) Improve accessibility based on ANDI tool results Evaluate all pages with the ANDI tool and improve/change the software for all reasonable tool results. "Reasonable" is everything, which

2) Create a 2nd color schema for text elements Evaluated existing colors using a Color Contrast Analyzer tool Invent new color scheme for all text elements, which do not fulfill the minimum requirement (1.4.3). For using this new Color Schema two options: a) change standard implementation to use this new color scheme. This is especially possible in cases, where the color change is small. On the other hand, it shall not be a "big" color change be done in the standard implementation, which would change look&fell. b) implement this second color scheme and make it configurable This configuration can be fixed for the whole system (=kitodo_config.properties) A configuration per user would be appreciated, but might have too much effort to implement.

Hint: Any color change should be put for discussion and agreement to the Community-Board.

@solth : Your opinion?

solth commented 9 months ago

@solth : Your opinion?

Sounds good. "can be done with limited effort" might be problematic, though, and probably just shifts the vagueness from "reasonable" to another term. Perhaps this needs to specified more in detail to better be able to estimate the cost of implementing this feature.

anspallek commented 8 months ago

Good Points. Here are a few suggestions on how to specify the points in more detail

Fonts: Evaluate the accessibility of the fonts

APCA (Advanced Perceptual Contrast Algorithm): new colour contrast guide for web creators as part of the Web Content Accessibility Guidelines (WCAG) 3 update

How accessible is the colour Orange?

Color Scheme for metadataeditor: A coordinated color scheme can increase the focus. Some colors like bright colors can be distracting.

stefanCCS commented 8 months ago

@anspallek : Many thanks for providing this input. I think this is good now to be discussed for "Development Fund".

Just to not forget: Before this issues goes into a "Request for Quotation" it must be put into a status, where it is clear stated for a company what (and what not) to do.

solth commented 8 months ago

Votes: 8

stweil commented 8 months ago

Before this issues goes into a "Request for Quotation" it must be put into a status, where it is clear stated for a company what (and what not) to do.

That also requires metrics which report accessibility issues. From our own experience I know that manual checks are very time consuming, so I don't think that such checks are the right solution. Automated checks can be done by the Firefox web developer tools for example. Some issues like images without an alternate text might also be detectable by a static code analysis.

How many different pageviews exist for Kitodo.Production, and which of them should be fixed? Maybe the task should focus on the most relevant ones?