KioskBoard - Virtual Keyboard
A pure JavaScript library for using the Virtual Keyboard.
Current Version
1.3.0 *
Documentation and Demo
https://furcan.github.io/KioskBoard/
Browser Compatibility
Chrome
- Firefox
- Safari
- Opera
- Edge
(A) Install & Import
Install
npm i kioskboard
yarn add kioskboard
Import
import KioskBoard from "kioskboard";
(B) Adding to an HTML Document
CSS and JS
<link rel="stylesheet" href="dist/kioskboard-1.3.0.min.css" />
<script src="dist/kioskboard-1.3.0.min.js"></script>
Or only JS (All in One - Internal CSS)
<script src="dist/kioskboard-aio-1.3.0.min.js"></script>
Keyboard Types and Themes
3 types of keyboards can be used: all
, keyboard
, and numpad
.
5 types of themes can be used. light
, dark
, flat
, material
, and oldschool
.
Initialize / Run
KioskBoard Virtual Keyboard can be used with the input
or textarea
elements. KioskBoard must be initialized with the required options. The other options are optional. The keyboard type data-kioskboard-type
and special characters data-kioskboard-specialcharacters
settings are each element-based (data attributes). All options and examples of data attribute usages are as below. Also, a custom class name can be defined for all input or textarea elements to run KioskBoard.
HTML => (data-* options)
<textarea class="virtual-keyboard" data-kioskboard-type="all" data-kioskboard-specialcharacters="true" placeholder="Your Address"></textarea>
<input class="virtual-keyboard" data-kioskboard-type="keyboard" data-kioskboard-specialcharacters="false" placeholder="Your Name" />
<input class="virtual-keyboard" data-kioskboard-type="numpad" placeholder="Your Number" />
JS => (Initialize & Run)
KioskBoard.Init({
keysArrayOfObjects: null,
keysJsonUrl: null,
specialCharactersObject: null,
language: 'en',
theme: 'light',
capsLockActive: true,
allowRealKeyboard: false,
cssAnimations: true,
cssAnimationsDuration: 360,
cssAnimationsStyle: 'slide',
keysAllowSpacebar: true,
keysSpacebarText: 'Space',
keysFontFamily: 'sans-serif',
keysFontSize: '22px',
keysFontWeight: 'normal',
keysIconSize: '25px',
allowMobileKeyboard: false,
autoScroll: true,
});
KioskBoard.Run('.virtual-keyboard');
Merge
KioskBoard.Merge({});
function can be used to extend the Initialize function via using a specific action or event.
KioskBoard.Merge({
theme: 'dark',
});
Language (JSON)
If custom keys are not defined with the keysArrayOfObjects
option, the keysJsonUrl
option can be used. Can create an Array of Objects for custom keys related to a custom language. Expecting JSON format is like [{"key":"value", "key":"value"}, ...]
Each object in that array creates a row element (HTML) on the keyboard. The "key" in the objects is an "index" for each Keyboard Keys. Also, the "value" is each key's value and text.
Additionally, KioskBoard includes 6 different language packages: English
Turkish
Spanish
German
French
Hungarian
An example of a JSON file (for custom keys) is as below.
[
{
"0":"Q",
"1":"W",
"2":"E",
"3":"R",
"4":"T",
"5":"Y",
"6":"U",
"7":"I",
"8":"O",
"9":"P"
},
{
"0":"A",
"1":"S",
"2":"D",
"3":"F",
"4":"G",
"5":"H",
"6":"J",
"7":"K",
"8":"L"
},
{
"0":"Z",
"1":"X",
"2":"C",
"3":"V",
"4":"B",
"5":"N",
"6":"M"
}
]
Copyright
Copyright © 2020 KioskBoard - Virtual Keyboard
License
MIT license - https://opensource.org/licenses/MIT