Type with the Polish layout on this on-screen keyboard. Click the keys or use your physical keyboard and watch every key light up.
Polish Keyboard Online
This online Polish keyboard loads the Polish layout by default. Click the keys with your mouse, tap on a touch screen, or type on your physical keyboard and watch the matching keys light up. Use the language button on the bottom row to switch to any of the other supported layouts.
The Polish keyboard uses the Polish (Programmers) layout, which looks exactly like US QWERTY - that is why typists and coders prefer it. The nine Polish letters live on the right Alt (AltGr) layer: hold AltGr and a letter to get ą, ć, ę, ł, ń, ó, ś, ź or ż. Nothing else moves, so your muscle memory carries over.
A unique feature: right-clicking a key types its shifted symbol.
Not sure how to type in Polish? Try our Polish typing test and practice on real phrases.
Want this keyboard on your own website? You can embed it with a single line of HTML.
Add Qwertia to your site
Put a keyboard button next to any input on your own website with a single line of HTML. Visitors can type accented or non-Latin characters without changing their system layout.
Drop in this one-liner and Qwertia will add a small keyboard button next to every field you mark up with data-qwertia:
<script src="https://qwertia.com/js/qwertia-input.js" async></script>
<input type="text" data-qwertia>
<textarea data-qwertia="de"></textarea>
The value of data-qwertia picks the initial keyboard layout (en, es, fr, de, ru, br, it, nl, ko, ja, ar, hi, bn, tr, sv, fi, nb, pl, cs, el, az, dv, numpad). You can also use data-qwertia-layout, data-qwertia-skin, data-qwertia-size, data-qwertia-theme for finer control.
To bind fields from your own JavaScript - for example after rendering them with a framework - call the API directly:
Qwertia.bind(document.getElementById("login"), { layout: "ru" });
Clicking the button opens the Qwertia keyboard in a small popover. Every keystroke is mirrored back into your input through postMessage, so framework-controlled fields (React, Vue, Angular) keep working as usual - both input and change events fire on the original element. The typed text never leaves the user's browser: there is no server round-trip.
Try it right here
The three fields below are bound exactly the same way as on any other site - click the keyboard icon next to a field and start typing:
Frequently Asked Questions
Mobile keyboards are built into the operating system, so they predict the word you are about to type and silently resize the touch area of the keys they expect next. That hidden auto-correction is why you sometimes can't type the word you actually mean - you aim for one key but get a different character. Start deleting and the algorithm pauses for the next word.
It's a mixed blessing: handy for everyday messaging, frustrating for passwords, codes, names and foreign words. Qwertia does no guessing - every click types exactly the character you pressed.
Yes. Qwertia virtual keyboard is completely free and runs entirely in your web browser. There is nothing to download, install or sign up for - just open the page and start typing.
Yes. Everything you type stays in your browser. Qwertia does not send your keystrokes to any server. The text area on this page is local to your device, and the same applies when you embed the keyboard on your own site using qwertia-input.js.
Qwertia supports twenty-three layouts: English, German, French, Spanish, Russian, Italian, Portuguese, Dutch, Korean, Arabic, Japanese, Turkish, Swedish, Finnish, Norwegian, Polish, Czech, Greek, Azerbaijani, Hindi and Bengali, plus the alternative Dvorak layout for English and a calculator-style Numpad. Use the language button on the bottom row of the keyboard to switch between them at any time.
Poland has an official national keyboard standard - the Typist's keyboard (klawiatura maszynistki, Polish Standard PN-87), a QWERTZ design that gives the Polish letters their own keys - yet almost nobody uses it; it is widely dismissed as impractical. The layout Poles actually type on, the Polish (Programmers) arrangement shown here, has no official standard behind it at all and simply became the de facto norm on virtually every computer sold in the country. The unusual part is that the standardized layout lost out, and the unofficial one won by keeping the familiar US QWERTY and tucking the diacritics onto AltGr.
The Numpad - short for numeric keypad, and also known as the ten-key or number pad - is the calculator-style block of digits, a decimal point and the + - * / operators, laid out for fast one-handed number entry. It is the tool of choice for accountants, cashiers and anyone filling spreadsheets, because keying figures in a tight 3x3 grid is far quicker than reaching across the number row. Qwertia's Numpad keyboard reproduces that grid on screen, with a Backspace key where Num Lock normally sits, and the Numpad typing test drills it with real accounting calculations.
Dvorak is an alternative English layout designed in the 1930s by Dr. August Dvorak to reduce finger travel. It has the same keys as QWERTY but rearranges them so the most frequently used letters fall on the home row - the vowels under the left hand and the most common consonants under the right - which lets the hands alternate and keeps your fingers near their resting position. Try it on the Dvorak keyboard or take the Dvorak typing test. Because it is the same physical keyboard, you can switch back to QWERTY whenever you like.
Yes. The Korean layout uses the standard Dubeolsik arrangement, and Qwertia automatically combines the individual jamo you type into complete Hangul syllable blocks, just like a system input method. The Arabic layout follows the Arabic 101 standard and writes from right to left. The Japanese layout lets you type either by romaji (Qwertia converts the Latin letters to kana as you go, with no kanji dictionary) or directly on the JIS kana layout, and you can switch between hiragana and katakana. Each layout also has its own typing test with native phrases.
Live, one keystroke at a time. In Korean every key is a single jamo, and Qwertia keeps track of whether the current syllable still needs a leading consonant, a vowel or a final consonant (받침), redrawing the Hangul block on each press. If a finished block already has a final consonant and your next key is a vowel, that consonant hops to the front of a new block - so 안 followed by a vowel splits into 아 + 나 on its own, exactly like a system input method.
In Japanese romaji mode Qwertia buffers your Latin letters and converts them the instant they form a kana: ka → か, a doubled consonant becomes a small っ, and n becomes ん before the next consonant. In kana mode you type kana straight from the JIS keys and add the dakuten ゛ or handakuten ゜ to voice them. Either way there is no kanji dictionary - what you assemble is what you get.
Yes. Alongside Korean, Arabic and Japanese, Qwertia includes a Greek layout (with the monotonic tonos accent), Russian Cyrillic, and the Devanagari and Bengali INSCRIPT layouts for Hindi and Bengali. On the Indic layouts each key types one Unicode sign and your browser shapes them into conjuncts, exactly like a system keyboard. There are also Turkish, Azerbaijani, Polish, Czech, Swedish, Finnish and Norwegian layouts, each with its own accented letters, dead keys and AltGr symbols.
Languages with diacritics use dead keys: press an accent key (for example ´ or ^) and then press a letter to get the accented character. You can also right-click a key to type its shifted symbol.
Yes. Type on your physical keyboard as usual and the matching on-screen keys will light up. This is useful for learning a new layout or checking which key produces which character.
Yes. Add a single line of HTML and Qwertia will place a keyboard button next to any input field on your site. See the Add Qwertia to your site section above for the script tag, layout options and a live demo.
Visit the Symbols & Alt Codes page to browse special characters with their Windows Alt codes. Click any symbol to copy it to your clipboard instantly. For smileys, hearts, flags and other pictographs, open the Emoji picker and click any emoji to copy it.