Cover image

The Better Keyboard for iOS

During the recent 30th Chaos Communication Congress, where a lot of tech enthusiasts come together, I had a talk with people complaining about the keyboard in iOS. We talked about the possibilities to improve typing and it came out, there is a built-in text checker and unified protocols for text inputs in iOS. We then began a prototype together, which improves the iOS keyboard and text handling significantly. This turned into a project, which was my free time project for the last month.

The iOS keyboard and text navigation is often cumbersome and awkward. E.g. in order to jump to the preceding word in a text you need a lot of touches on the top of the text input itself. You can not directly make the word upper or lower case if you are in between a word. Also though there is a built-in syntax checker, you can only choose a suggestion by holding on a word. You never directly see what words it suggests. We thought we can do better!

In the following you see some screencasts explaining how we thought the interaction to be. We first wanted to begin changing the navigation inside texts, so we thought the main gesture to be swiping left and right on the keyboard. The more far you drag the faster the cursor gets. That's a quite familiar navigation and you can navigate very fine as well as very fast depending on what you currently want.

The better keyboard for iOS
The better keyboard for iOS

Next we wanted to add suggestions while typing: The iPhone keyboard is very small so you can do a lot of typing mistakes. We prevent mistakes by giving suggestions for the most likely words, which are similar in content and length. We put a very basic attachment view on top of texts. Also you can use suggestions by swiping down (this chooses the next word) and up (to choose the preceding word).

Screen recording
Screen recording

Another problem was that you sometimes just type a word and in between the word you recognize that you want to write that word uppercase. In my native language German this is happening much more often, because every noun is written in big letters. So we added a button for uppercasing or lowercasing the currently selected word to the right side of the attachment.

Maybe you didn’t know that yet: But on the default iOS keyboard you can touch double space for closing the sentence with a period. We also build a gesture for that: If you are at the end of the text and swipe right, you jump directly to the next word by putting a space. If you swipe right a second time this produces a period and begins a new sentence.

This was a basic explanation of the main features of the keyboard. If you like this project you can find it on Github. Please share if you support this. It's freely available under Cultural Commons (CC0).