# virtual keyboard

> software component that allows a user to enter characters

**Wikidata**: [Q861170](https://www.wikidata.org/wiki/Q861170)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/Virtual_keyboard)  
**Source**: https://4ort.xyz/entity/virtual-keyboard

## Summary
A **virtual keyboard** is a software component that allows users to enter characters without a physical keyboard. It simulates a traditional computer keyboard on a screen, enabling input via touch, mouse, or other pointing devices.

## Key Facts
- **Definition**: A software-based input method that mimics a physical keyboard.
- **Classification**: Subclass of *software* and *component-based software engineering*.
- **Aliases**: Also known as *on-screen keyboard*, *virtual screen keyboard*, or *virtual input keyboard*.
- **Examples**: Includes popular implementations like *Gboard* (Google, 2016), *Fleksy* (2013), and *Swype* (2013).
- **Platforms**: Used in smartphones, tablets, and accessibility tools.
- **Freebase ID**: `/m/0blvxn` (referenced in Freebase, 2013).
- **Wikidata Sitelinks**: 26 language editions, including English, German, and Japanese.

## FAQs
### Q: What is a virtual keyboard used for?
A: It enables text input on devices without physical keyboards, such as touchscreens, and assists users with mobility impairments.

### Q: Are virtual keyboards only for mobile devices?
A: No, they are also used in desktop accessibility tools, kiosks, and embedded systems.

### Q: What are some popular virtual keyboards?
A: *Gboard* (Google), *Fleksy*, *Swype*, and *OpenBoard* are widely used examples.

### Q: Can virtual keyboards support multiple languages?
A: Yes, tools like *Google Input Tools* (2012) offer multilingual input.

### Q: Are there open-source virtual keyboards?
A: Yes, *OpenBoard* and *HeliBoard* are free and open-source options.

## Why It Matters
Virtual keyboards revolutionized input methods by eliminating the need for physical hardware, making devices more portable and accessible. They are essential for touchscreen devices like smartphones and tablets, enabling efficient text entry. For users with disabilities, virtual keyboards provide an alternative input method, improving inclusivity. Additionally, they support multilingual input, emoji, and predictive text, enhancing user experience. Their integration into operating systems (e.g., Android, iOS) has made them a standard feature in modern computing.

## Notable For
- **Accessibility**: Critical for users with motor disabilities who cannot use physical keyboards.
- **Touchscreen Adaptation**: Pioneered input methods for smartphones and tablets.
- **Multilingual Support**: Enables input in multiple languages (e.g., *Google Input Tools*).
- **Open-Source Options**: Projects like *OpenBoard* and *HeliBoard* offer customizable alternatives.
- **Innovative Input Methods**: Includes gesture-based typing (e.g., *Swype*) and AI-powered suggestions (e.g., *Gboard*).

## Body
### **Definition and Function**
A virtual keyboard is a software interface that displays a keyboard layout on a screen, allowing users to input text via touch, mouse, or other pointing devices. It simulates the functionality of a physical keyboard but exists entirely in software.

### **Classification and Relationships**
- **Parent Classes**:
  - *Software*: Non-tangible executable components of a computer.
  - *Component-Based Software Engineering*: A branch of software engineering focusing on modular design.
- **Related Input Methods**:
  - *Flick Input*: A Japanese keyboard method for smartphones.

### **Examples and Implementations**
- **Gboard** (Google, 2016): A widely used virtual keyboard for Android and iOS with AI-powered features.
- **Fleksy** (2013): Known for its customizable themes and gesture controls.
- **Swype** (2013): Introduced continuous finger-swiping for text input.
- **OpenBoard**: A free, open-source Android keyboard.
- **Google Input Tools** (2012): Supports multilingual input and virtual keyboard layouts.

### **Technical Characteristics**
- **Virtual Nature**: Does not require physical keys; rendered on-screen.
- **Input Methods**: Supports touch, mouse clicks, or stylus input.
- **Customization**: Many virtual keyboards allow layout changes, themes, and predictive text.

### **Accessibility and Use Cases**
- **Disability Support**: Enables users with limited mobility to type via screen interactions.
- **Kiosks and Public Terminals**: Used in ATMs, ticket machines, and interactive displays.
- **Embedded Systems**: Integrated into IoT devices and smart appliances.

## Schema Markup
```json
{
  "@context": "https://schema.org",
  "@type": "Thing",
  "name": "virtual keyboard",
  "description": "software component that allows a user to enter characters",
  "sameAs": [
    "https://www.wikidata.org/wiki/Q15241312",
    "https://en.wikipedia.org/wiki/Virtual_keyboard"
  ],
  "additionalType": "https://www.wikidata.org/wiki/Q7397#software"
}

## References

1. Freebase Data Dumps. 2013
2. [OpenAlex](https://docs.openalex.org/download-snapshot/snapshot-data-format)