> For the complete documentation index, see [llms.txt](https://kolibri-selection-component.gitbook.io/kolibri-auswahlkomponente/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kolibri-selection-component.gitbook.io/kolibri-auswahlkomponente/2-grundlagen.md).

# 2 Grundlagen

Die Grundlagen ermöglichen einen Einblick in den Hintergrund des Projekts. Die vorhandene Basis findet sich in der Beschreibung der Ausgangslage des Kolibri wieder. Weiter setzt es den Grundstein für das Verständnis und Anwendung der Auswahlkomponente.

## **2.1 Ausgangslage**

Die FHNW betreibt und verwaltet das Toolkit Kolibri. Dabei wird das Projekt unter anderem durch Resultate aus Web-Projekten der Hochschule für Technik schrittweise weiterentwickelt. Interessierte Entwickler aus aller Welt können die Open-Source Codebasis ohne Probleme verwenden. Die Implementation der standardisierten Komponenten ist in reinem JavaScript umgesetzt. Daher sind keine komplexen Management-Systeme wie npm von Nöten. Die intuitive Zugänglichkeit von Kolibri ermöglicht einen schnellen Einstieg ohne lange Einarbeitungszeiten oder komplexe Tutorials. Auf der anderen Seite sind jedoch noch nicht alle Interaktionen vollständig erhältlich.

Um die Auswahlkomponente einfacher einbinden zu können, wurde aus der Github-Codebasis von Kolibri ([Appendix B](/kolibri-auswahlkomponente/appendix/b-github-repository-kolibri.md)) vom 18.09.2023 ein Fork erstellt. Dieser Stand enthält unter anderem bereits die `SimpleInput` Komponenten, welche alle Felder des `input` Tags verwalten kann. Noch nicht eingebundene Komponenten früherer Projekte sind unter dem Ordner *contrib* bereitgestellt.

Im Design Tool Figma existiert bereits ein Designsystem, als auch in das Toolkit eingebundene UI-Komponenten. Ein Satz von Icons ist bereits vorhanden, welcher bei Bedarf erweitert werden kann. Die bereits vorhandenen Elemente besitzen einen Komponenten-Aufbau. Dies erleichtert die Anwendung der Bausteine in der Entwicklung weiterer Elemente.

Ein gemeinsames Verständnis der Auswahl-Komponente und deren Herausforderung stellt eine wichtige Basis dar. Um diese Übereinstimmung zu schaffen, folgt die detaillierte Beschreibung in nachfolgenden Kapitel.&#x20;

## 2.2 Auswahlkomponente

Folgende Abschnitte beschreiben das gemeinsame Verständnis einer Auswahlkomponente, als auch die Wichtigkeit in der Anwendung, im besonderen mit grossen Datenmengen. Es zeigt die Herausforderungen und erste Lösungsgedanken auf.

### **2.2.1 Definition und Bedeutung**

Eine Auswahlkomponente, oft ein integraler Bestandteil moderner Benutzeroberflächen, ist ein interaktives Element in der Softwareentwicklung. Es ermöglicht den Benutzern, eine oder mehrere Optionen aus einer vordefinierten Liste auszuwählen. Ihre Anwendung reicht von einfachen Dropdown-Menüs bis hin zu komplexen Such- und Filtermechanismen. In der wissenschaftlichen Terminologie wird eine Auswahlkomponente oft als eine Schnittstelle definiert. Diese ermöglicht eine effektive Interaktion zwischen dem Benutzer und den verfügbaren Datenoptionen.&#x20;

### **2.2.2 Wichtigkeit bei umfangreichen Datensätzen**

([UX PICKLE, 2024](/kolibri-auswahlkomponente/verzeichnisse/quellenverzeichnis.md)) Die Bedeutung von Auswahlkomponenten nimmt zu, insbesondere in Szenarien, in denen Benutzer aus einer grossen Menge von Daten auswählen müssen. Ein klassisches Beispiel hierfür ist die Auswahl eines Wohnsitzlandes aus allen Ländern der Welt. In solchen Fällen muss die Auswahlkomponente nicht nur eine umfassende Liste der verfügbaren Optionen bereitstellen, sondern auch eine benutzerfreundliche Schnittstelle, um die Suche und Auswahl zu erleichtern.

### **2.2.3 Herausforderungen und Lösungsansätze**

([Maurer Spence, 2024](/kolibri-auswahlkomponente/verzeichnisse/quellenverzeichnis.md)) Die Hauptherausforderung bei der Gestaltung einer Auswahlkomponente für grosse Datensätze liegt in der Bereitstellung einer nahtlosen und intuitiven Benutzererfahrung. Zu viele Optionen können überfordernd wirken und die Benutzerfreundlichkeit beeinträchtigen. Um dies zu bewältigen, kommen oft fortschrittliche Techniken wie inkrementelle Suche, Filterung und Kategorisierung zum Einsatz.

Inkrementelle Suchmechanismen ermöglichen es den Benutzern, ihre Auswahl durch Eingabe von Suchbegriffen zu verfeinern, wodurch die Liste der Optionen dynamisch gefiltert wird. Dies ist besonders effektiv, wenn die Auswahl aus einer umfangreichen Liste – wie der aller Länder der Welt – erfolgen soll. Durch die Filterung nach bestimmten Kriterien, wie etwa dem Kontinent, können Anwender die Auswahl effizienter eingrenzen.

### 2.2.4 Fazit

Zusammenfassend lässt sich sagen, dass Auswahlkomponenten eine wichtige Rolle in der Gestaltung benutzerzentrierter Software spielen, insbesondere wenn es um die Navigation und Auswahl aus umfangreichen Datensätzen geht. Die Herausforderung besteht darin, eine Balance zwischen der Bereitstellung aller notwendigen Informationen und der Gewährleistung einer intuitiven, effizienten Benutzeroberfläche zu finden. Innovative Ansätze in der UI/UX-Designphilosophie, wie die Implementierung der inkrementellen Suche und intelligenten Filtermechanismen, sind dabei unerlässlich, um eine optimale Benutzererfahrung zu ermöglichen. Zusätzlich kann das Analysieren der Fehler von Konkurrenzprodukten hilfreich sein.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://kolibri-selection-component.gitbook.io/kolibri-auswahlkomponente/2-grundlagen.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
