A software-based keyboard that appears on the screen and is used with touchscreens or other devices without a physical keyboard.