Skip to content

mspecht-adesso/kolibri

 
 

Repository files navigation

Willkommen bei KoliBri

KoliBri steht für Komponenten-Bibliothek für die Barrierefreiheit

Vision

Wir machen gemeinsam HTML mittels wiederverwendbaren Web Components barrierefrei, um die Usability und Zugänglichkeit sicherzustellen.

Mission

Der HTML-Webstandard ist an sich sehr "offen" spezifiziert, um möglichst langlebig und robust zu sein. Es kommt daher häufig vor, das HTML-Kompositionen nicht ohne Weiteres barrierefrei, semantisch und valide sind. KoliBri baut direkt auf den Webstandards des W3C auf (Framework-agnostisch), ist dabei eine generische Referenzimplementierung des WCAG-Standards und der BITV für die Barrierefreiheit und als eine Multi-Theming-fähige Präsentationsschicht umgesetzt. Es gibt keinerlei fachlichen Bezug und keine Datenübertragungsfunktionalitäten. Damit ist KoliBri für die Realisierung statischer Webseiten als auch dynamischer Webanwendungen unterschiedlicher Corporate Designs und Styleguides gleichermaßen wiederverwendbar und somit für Open Source sehr interessant.

Kollaboration und Kooperation

Der Fokus von KoliBri liegt auf kleinen (atomaren), sehr flexiblen und gut wiederverwendbaren HTML-Kompositionen (z.B. Button). Wir bieten eine barrierefreie, semantische und valide Standard-Implementierung solcher Komponenten an, die für jede höherwertige HTML-Struktur oder Komponente (Molekül, Organismus oder Template) wiederverwendet werden können.

Bei diesen atomaren Komponenten sollten wir kollaborieren und kooperieren, um unsere Fähigkeiten und unser Wissen zu bündeln. Durch die Synergieeffekte an den Basis-Komponenten kann der eigene Fokus mehr auf fachspezifische Inhalte gelegt werden.

Lasst uns dazu gemeinsam KoliBri besser und bunter machen!

Weiter zur Dokumentation

Lizenz

Logo European Union Public Licence (EUPL)

KoliBri wird unter der EUROPEAN UNION PUBLIC LICENCE v. 1.2 Open Source freigegeben. Folgende Aspekte sind insbesondere dadurch berücksichtigt:

  • Zugänglichmachung: Die Artefakte und der Quellcode können von jedem frei und kostenlos wiederverwendet werden. Hierdurch leistet der ITZBund einen Beitrag im Sinne von "Public Money - Public Code".
  • Gewährleistungs- und Haftungsausschluss: Mit der Wiederverwendung gehen keinerlei Gewährleistung und Haftungsansprüche einher.
  • „Copyleft“-Klausel: Copyleft besagt, dass jede Kopie von KoliBri (Fork) wieder unter der selben oder einer kompatiblen Open Source-Lizenz veröffentlicht werden muss.

Anwendung erstellen

Im folgenden Video sehen Sie, wie Sie ganz einfach eine Webanwendung auf KoliBri-Basis erstellen können.

Befehl: npm init kolibri@latest my-app

Zeigt wie man mit create-kolibri eine neue App anlegen kann.

Aktuell können Sie eine statische Webseite oder Webanwendungen für die Frameworks React, Preact, Solid, Next.js, Astro und Angular generieren.

Abgrenzung

Darstellung, wie die Komponenten mittels verschiedener Styleguides zu kundenspezifischen Komponenten werden.

KoliBri stellt die Barrierefreiheit auf Ebene der webbasierten Komponenten sicher und bietet die ideale Grundlage zur Realisierung barrierefreier Benutzeroberflächen.

KoliBri ist kein CSS-Framework und auch kein Design System. KoliBri dient jedoch als konkrete Implementierung semantisch korrekter Komponenten für Styleguides und Design Systeme.

KoliBri kombiniert (technisch) die barrierefrei abgestimmten und standardisierten Komponenten mit beliebigen Designs zu jeweils robusten und kundenspezifischen Komponenten für dynamische Webanwendungen und statische Webseiten.

Versionierung

KoliBri folgt den Prinzipien des semantischen Versionierens.

Aufbau einer Version:

  • besteht in der Regel aus 3 Teilen (z.B. 1.0.2)
    • Major, hier die 1
    • Minor, hier die 0
    • Patch, hier die 2
  • für die Härtungsphase einer Version, kann man zusätzlich Labels verwenden (z.B. 1.0.3-rc.2)
    • Label, hier die rc.2

Folgende Hauptprinzipien kommen dabei zur Anwendung:

  • Patch: Beinhaltet Änderungen die den aktuellen Funktionsumfang verbessern und in seiner Verwendung nicht ändern.
  • Minor: Beinhaltet Änderungen die den Funktionsumfang erweitern und den bestehenden Funktionsumfang in seiner Verwendung nicht ändern.
  • Major: Beinhaltet Änderungen die eine architektonische Neuausrichtung ermöglichen und den bestehenden Funktionsumfang in seiner Verwendung ändern dürfen.

Ausführliche Version der SemVer finden Sie hier: https://semver.org

Qualitätsziele

In der folgenden Tabelle werden die priorisierten Qualitäten von KoliBri aufgelistet:

Qualität Priorität Erläuterung
Kompatibilität AAA W3C®-Standards, Framework-agnostisch und Open Source
Gebrauchstauglichkeit AAA BIK BITV- und Usability-Test
Wartbarkeit AAA DevOps, Technologie-Stack, Modularisierung und Automatisierung
Portierbarkeit AA Anpassbarkeit an verschiedene Styleguides des Bundes oder anderer
Zuverlässigkeit AA BIK BITV-, Axe-, Unit-, Snapshot-, E2E-Tests und Developer Experience (EX)
Performance A KoliBri geht hier einen Kompromiss ein, da es die Entwicklung aktiv bei der Umsetzung barrierefreier Benutzeroberflächen unterstützt.
Sicherheit A Web Components dienen der Präsentationsschicht und beinhalten selbst keine sensitiven Informationen.

Geräte-, Betriebssystem-, Browser- und Screenreader-Anforderungen

KoliBri ist für die Umsetzung beliebiger webbasierter Benutzeroberflächen vorgesehen und soll auf allen modernen Geräten (PC, Tablet, Mobil), Betriebssystemen (Windows, Linux, MaxOS, Android, iOS) und standardkonformen Browsern eingesetzt werden können.

Der Microsoft Internet Explorer wird explizit nicht unterstützt, um das Projekt und die Entwicklung nicht durch Altlasten zu schwächen. KoliBri investiert stattdessen konziquent in die Zukunft.

Gerät Betriebsystem Browser Screenreader
PC Windows
Linux
MacOS
Chrome
Firefox
Edge
Opera
Safari (nur MacOS)
NVDA
Jaws
VoiceOver (nur MacOS)
Tablet
Mobil
Android
iOS
Chrome
Firefox
Edge
Opera
Safari (nur iOS)
TalkBack (nur Android)

Let's go

About

Komponenten-Bibliothek für die Barrierefreiheit

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 41.4%
  • CSS 29.8%
  • TypeScript 23.8%
  • Java 2.5%
  • JavaScript 2.1%
  • Vue 0.3%
  • Other 0.1%